:root {
    --font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-display: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-mono: "JetBrains Mono", "Cascadia Code", Consolas, "Courier New", monospace;
    --night-black: #06070d;
    --owl-purple: #7c3aed;
    --night-violet: #5b21b6;
    --soft-purple: #a78bfa;
    --glow-purple: #c084fc;
    --sidebar: #0b0d16;
    --card: #111322;
    --card-hover: #171a2b;
    --border: #262a3d;
    --border-active: #3b2f5c;
    --purple-glow: rgba(124, 58, 237, 0.2);
    --text-primary: #f8fafc;
    --text-secondary: #cbd5e1;
    --text-muted: #94a3b8;
    --text-disabled: #64748b;
    --nw-text-primary: #F3F6FB;
    --nw-text-secondary: #C7D2E0;
    --nw-text-muted: #8FA0B8;
    --nw-text-subtle: #7F8FA6;
    --nw-text-label: #9FB2CC;
    --nw-text-placeholder: #74849A;
    --nw-table-heading: #AFC4E8;
    --online: #22c55e;
    --offline: #94a3b8;
    --unknown: #f59e0b;
    --info: #38bdf8;
    --critical: #ef4444;
}

/* Night Owl Desk */
body.page-tickets {
    --module-accent: #22c55e;
    --module-accent-rgb: 34, 197, 94;
    --module-accent-soft: #86efac;
    --sidebar: #050609;
    --card: #0d1117;
    --card-hover: #111827;
    --border: #1f2937;
    --border-active: #263241;
    --nw-text-primary: #F3F6FB;
    --nw-text-secondary: #C7D2E0;
    --nw-text-muted: #8FA0B8;
    --nw-text-subtle: #7F8FA6;
    --nw-text-label: #9FB2CC;
    --nw-text-placeholder: #74849A;
    --nw-table-heading: #AFC4E8;
    --text-primary: var(--nw-text-primary);
    --text-secondary: var(--nw-text-secondary);
    --text-muted: var(--nw-text-muted);
    --text-disabled: var(--nw-text-placeholder);
    background: #050609;
    color: var(--nw-text-secondary);
}

body.page-tickets input::placeholder,
body.page-tickets textarea::placeholder {
    color: var(--nw-text-placeholder);
}

body.page-tickets .brand-subtitle,
body.page-tickets .nav-group-label,
body.page-tickets .topbar-kicker,
body.page-tickets .desk-ticket-meta,
body.page-tickets .desk-ticket-side,
body.page-tickets .desk-mini-flag,
body.page-tickets .desk-muted,
body.page-tickets .desk-presence-indicator,
body.page-tickets .desk-detail-tabbar a,
body.page-tickets .nw-quick-draft-line {
    color: var(--nw-text-muted);
}

body.page-tickets .desk-row-preview p,
body.page-tickets .desk-row-preview small,
body.page-tickets .desk-comment span,
body.page-tickets .desk-comment p,
body.page-tickets .desk-empty,
body.page-tickets .desk-empty p,
body.page-tickets .nw-related-item--selectable > button small,
body.page-tickets .nw-related-preview-empty p,
body.page-tickets .nw-related-preview-shell p,
body.page-tickets .nw-settings-empty,
body.page-tickets .nw-settings-coming-soon span,
body.page-tickets .nw-quick-autocomplete span,
body.page-tickets .nw-quick-autocomplete p {
    color: var(--nw-text-subtle);
}

body.page-tickets .desk-ticket-title,
body.page-tickets .desk-editable-title h1,
body.page-tickets .desk-row-preview strong,
body.page-tickets .desk-form-panel h2,
body.page-tickets .desk-panel h2,
body.page-tickets .nw-related-preview-shell h3,
body.page-tickets .nw-related-preview-shell dd,
body.page-tickets .nw-settings-card dd,
body.page-tickets .nw-review-summary dd,
body.page-tickets .nw-quick-autocomplete strong,
body.page-tickets .nw-quick-ticket-summary strong,
body.page-tickets .nw-quick-ticket-endpoint strong,
body.page-tickets .nw-quick-ticket-related strong {
    color: var(--nw-text-primary);
}

body.page-access-inventory {
    --module-accent: #38bdf8;
    --module-accent-soft: #7dd3fc;
    --module-accent-rgb: 56, 189, 248;
}

body.page-access-inventory .endpoint-alert-item {
    color: inherit;
    text-decoration: none;
}

body.page-tickets .sidebar {
    background: #050609;
    border-right-color: #1f2937;
}

body.page-tickets .brand {
    border-bottom: 1px solid #1f2937;
    margin-bottom: 18px;
    padding-bottom: 20px;
}

body.page-tickets .brand-logo {
    background:
        radial-gradient(circle at 50% 22%, rgba(34, 197, 94, 0.16), transparent 38%),
        linear-gradient(145deg, #111827, #080b10);
    border-color: rgba(34, 197, 94, 0.34);
    box-shadow: 0 0 22px rgba(34, 197, 94, 0.08);
    color: #86efac;
}

body.page-tickets .brand-subtitle,
body.page-tickets .nav-group-label,
body.page-tickets .topbar-kicker {
    color: var(--nw-text-muted);
}

body.page-tickets .nav-item {
    color: var(--nw-text-secondary);
}

body.page-tickets .nav-item:hover {
    background: #0d1117;
    border-color: rgba(34, 197, 94, 0.22);
    color: var(--nw-text-primary);
}

body.page-tickets .nav-item.active {
    background:
        linear-gradient(90deg, rgba(34, 197, 94, 0.14), rgba(13, 17, 23, 0.96)),
        #0d1117;
    border-color: rgba(34, 197, 94, 0.38);
    box-shadow: inset 3px 0 0 #22c55e;
    color: var(--nw-text-primary);
}

body.page-tickets .nav-item.active svg {
    color: #86efac;
}

body.page-tickets .topbar {
    background: rgba(5, 6, 9, 0.88);
    border-bottom: 1px solid #1f2937;
    backdrop-filter: blur(18px);
}

body.page-tickets .topbar-status {
    background: #0d1117;
    border-color: #263241;
    color: var(--nw-text-secondary);
}

body.page-tickets .topbar-status svg {
    color: #86efac;
}

.desk-shell {
    display: grid;
    gap: 22px;
}

.desk-hero {
    border-color: #1f2937;
    border-top-color: rgba(34, 197, 94, 0.36);
    background:
        radial-gradient(circle at 12% 0%, rgba(34, 197, 94, 0.08), transparent 34%),
        linear-gradient(135deg, rgba(17, 24, 39, 0.98), rgba(8, 11, 16, 0.98)),
        #0d1117;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
}

body.page-tickets .desk-hero.page-header::before {
    background: linear-gradient(90deg, #22c55e, #86efac, transparent);
}

body.page-tickets .page-title {
    color: var(--nw-text-primary);
}

body.page-tickets .page-subtitle {
    color: var(--nw-text-secondary);
}

.desk-hero .page-header-icon {
    background:
        radial-gradient(circle at 50% 20%, rgba(34, 197, 94, 0.14), transparent 42%),
        #111827;
    border-color: rgba(34, 197, 94, 0.34);
    color: #86efac;
    box-shadow: 0 0 34px rgba(34, 197, 94, 0.12);
}

.desk-kicker {
    color: #86efac;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.desk-btn {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 10px;
    color: var(--nw-text-secondary);
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    text-decoration: none;
    transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease, transform 170ms ease;
}

.desk-btn:hover {
    background: #111827;
    border-color: rgba(52, 211, 153, 0.52);
    color: #f8fafc;
    transform: translateY(-1px);
}

.desk-btn-primary {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    border-color: transparent;
    color: #04100b;
}

.desk-btn-primary:hover {
    background: linear-gradient(135deg, #34d399, #22c55e);
    color: #04100b;
}

.desk-btn svg {
    height: 16px;
    width: 16px;
}

.desk-module-nav {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
}

.desk-module-nav a,
.desk-module-nav span {
    align-items: center;
    border-radius: 10px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    padding: 10px 12px;
    text-decoration: none;
}

.desk-module-nav a.active {
    background: rgba(34, 197, 94, 0.1);
    box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.18);
    color: #f8fafc;
}

.desk-module-nav a:hover {
    background: rgba(34, 197, 94, 0.08);
    color: #f8fafc;
}

.desk-module-nav span {
    opacity: 0.55;
}

.desk-panel,
.desk-ticket-card,
.desk-form-panel {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
}

.desk-ticket-card:hover,
.desk-panel:hover {
    background: #10251d;
    border-color: rgba(34, 197, 94, 0.42);
    transform: translateY(-1px);
}

.desk-critical svg,
.desk-badge.critical,
.desk-badge.priority-critical {
    color: #fecaca;
}

.desk-form-grid label,
.desk-inline-form label {
    display: grid;
    gap: 7px;
}

.desk-form-grid span,
.desk-inline-form span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.desk-form-grid input,
.desk-form-grid textarea,
.desk-form-grid select,
.desk-inline-form select,
.desk-stack-form input,
.desk-comment-form textarea,
.desk-comment-form select {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #f8fafc;
    min-height: 42px;
    padding: 0 12px;
}

.desk-form-grid input:focus,
.desk-form-grid textarea:focus,
.desk-form-grid select:focus,
.desk-inline-form select:focus,
.desk-stack-form input:focus,
.desk-comment-form textarea:focus,
.desk-comment-form select:focus {
    border-color: rgba(34, 197, 94, 0.62);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.12);
    outline: none;
}

.desk-form-grid textarea,
.desk-comment-form textarea {
    padding: 12px;
}

.desk-check {
    align-items: center;
    border: 1px solid #263241;
    border-radius: 10px;
    display: flex !important;
    gap: 8px;
    min-height: 42px;
    padding: 0 12px;
}

.desk-ticket-card {
    align-items: center;
    display: grid;
    gap: 16px;
    grid-template-columns: 1.4fr 0.95fr 1.2fr auto;
    padding: 16px;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.desk-ticket-card.priority-critical {
    border-color: rgba(239, 68, 68, 0.34);
    box-shadow: inset 3px 0 0 rgba(239, 68, 68, 0.72);
}

.desk-ticket-card.unassigned {
    box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.54);
}

.desk-ticket-main {
    align-items: center;
    display: flex;
    gap: 14px;
    min-width: 0;
}

.desk-ticket-number {
    align-items: center;
    background: rgba(34, 197, 94, 0.13);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 12px;
    color: #86efac;
    display: inline-flex;
    font-family: var(--font-mono);
    font-weight: 900;
    height: 44px;
    justify-content: center;
    min-width: 62px;
    padding: 0 10px;
}

.desk-ticket-title {
    color: #f8fafc;
    display: block;
    font-size: 15px;
    font-weight: 900;
    max-width: 100%;
    overflow: hidden;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.desk-ticket-meta,
.desk-ticket-side {
    color: #94a3b8;
    display: flex;
    flex-wrap: wrap;
    font-size: 12px;
    gap: 8px;
}

.desk-ticket-tags,
.desk-ticket-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-ticket-actions {
    justify-content: flex-end;
}

.desk-ticket-actions form,
.page-actions form {
    margin: 0;
}

.desk-ticket-side {
    display: grid;
    gap: 7px;
}

.desk-ticket-side span {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.desk-ticket-side svg {
    height: 14px;
    width: 14px;
}

.desk-badge {
    align-items: center;
    background: rgba(167, 184, 176, 0.08);
    border: 1px solid rgba(167, 184, 176, 0.18);
    border-radius: 999px;
    color: #dce7e1;
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    gap: 6px;
    min-height: 26px;
    padding: 0 10px;
    text-transform: uppercase;
}

.desk-badge.status-new,
.desk-badge.status-in_progress {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.26);
    color: #86efac;
}

.desk-badge.status-resolved,
.desk-badge.status-closed,
.desk-badge.priority-low {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
    color: #86efac;
}

.desk-badge.status-waiting_user,
.desk-badge.status-waiting_third_party {
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.24);
    color: #fbbf24;
}

.desk-badge.priority-normal,
.desk-badge.priority-high {
    background: rgba(56, 189, 248, 0.1);
    border-color: rgba(56, 189, 248, 0.24);
    color: #7dd3fc;
}

.desk-badge.status-canceled,
.desk-badge.priority-critical {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.24);
}

.desk-empty {
    align-items: center;
    background: #0d1117;
    border: 1px dashed #263241;
    border-radius: 16px;
    color: #94a3b8;
    display: grid;
    gap: 8px;
    justify-items: center;
    padding: 34px;
    text-align: center;
}

.desk-empty.compact {
    align-items: start;
    justify-items: start;
    padding: 18px;
}

.desk-empty svg {
    color: #86efac;
}

.desk-form-panel {
    display: grid;
    gap: 22px;
    padding: 22px;
}

.desk-form-panel h2,
.desk-panel h2 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    font-size: 16px;
    gap: 8px;
    margin: 0 0 16px;
}

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

.desk-form-grid .wide {
    grid-column: 1 / -1;
}

.desk-partner-toggle {
    align-items: center;
    background: #111827;
    border: 1px solid #263241;
    border-radius: 12px;
    display: flex !important;
    gap: 12px;
    padding: 12px;
}

.desk-partner-toggle input {
    min-height: auto;
    width: 18px;
}

.desk-partner-toggle strong {
    color: #f8fafc;
    display: block;
}

.desk-partner-toggle small {
    color: #94a3b8;
}

.desk-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.desk-create-shell {
    gap: 14px;
}

.desk-create-mode-switch {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
    width: fit-content;
}

.desk-create-mode-switch a {
    align-items: center;
    border-radius: 10px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    gap: 8px;
    padding: 10px 12px;
}

.desk-create-mode-switch a.active,
.desk-create-mode-switch a:hover {
    background: rgba(34, 197, 94, 0.1);
    color: #f8fafc;
}

.desk-create-draft,
.desk-duplicate-notice,
.desk-vip-explanation {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 14px;
    color: #94a3b8;
    display: flex;
    gap: 12px;
    padding: 14px;
}

.desk-create-draft strong,
.desk-duplicate-notice strong,
.desk-vip-explanation span {
    color: #f8fafc;
}

.desk-create-draft svg,
.desk-duplicate-notice svg,
.desk-vip-explanation svg {
    color: #86efac;
    flex: 0 0 auto;
}

.desk-create-draft .desk-btn,
.desk-duplicate-notice .desk-btn {
    margin-left: auto;
}

.desk-create-grid {
    display: grid;
    gap: 14px;
}

.desk-create-quick,
.desk-create-wizard {
    display: none;
}

.desk-create-quick.is-active,
.desk-create-wizard.is-active {
    display: grid;
}

.desk-create-quick-form {
    align-items: end;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1.6fr) minmax(220px, 0.5fr) auto;
}

.desk-create-quick-form .wide {
    grid-row: span 2;
}

.desk-create-quick-form label,
.desk-create-step label {
    display: grid;
    gap: 7px;
}

.desk-create-quick-form span,
.desk-create-step label > span,
.desk-field-hint {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.desk-create-quick-form input,
.desk-create-quick-form textarea,
.desk-create-step input,
.desk-create-step textarea,
.desk-create-step select {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #f8fafc;
    min-height: 42px;
    padding: 0 12px;
}

.desk-create-quick-form textarea,
.desk-create-step textarea {
    padding: 12px;
}

.desk-create-step input:focus,
.desk-create-step textarea:focus,
.desk-create-step select:focus,
.desk-create-quick-form input:focus,
.desk-create-quick-form textarea:focus {
    border-color: rgba(34, 197, 94, 0.62);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.12);
    outline: none;
}

.desk-create-step {
    display: none;
    gap: 18px;
}

.desk-create-step.is-active {
    display: grid;
}

.desk-create-step-header {
    align-items: start;
    display: flex;
    gap: 12px;
}

.desk-create-step-header h2 {
    margin-bottom: 4px;
}

.desk-create-step-header p {
    color: #94a3b8;
    margin: 0;
}

.desk-step-pill {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.22);
    border-radius: 999px;
    color: #86efac;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 900;
    padding: 7px 10px;
}

.desk-category-suggestions,
.desk-requester-autofill {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.desk-category-suggestions button,
.desk-requester-autofill button {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    color: #f8fafc;
    cursor: pointer;
    display: grid;
    gap: 4px;
    padding: 12px;
    text-align: left;
}

.desk-category-suggestions button:hover,
.desk-requester-autofill button:hover {
    background: #10251d;
    border-color: rgba(34, 197, 94, 0.34);
}

.desk-category-suggestions svg {
    color: #86efac;
}

.desk-category-suggestions small,
.desk-requester-autofill span {
    color: #94a3b8;
}

.desk-create-device-card {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 12px;
}

.desk-create-device-card strong,
.desk-alert-preview-grid strong {
    color: #f8fafc;
}

.desk-create-device-card small,
.desk-create-device-card em,
.desk-alert-preview-grid span,
.desk-create-note {
    color: #94a3b8;
}

.desk-alert-ticket-preview {
    padding: 16px;
}

.desk-alert-preview-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.desk-alert-preview-grid div {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 4px;
    padding: 12px;
}

.desk-duplicate-notice {
    align-items: flex-start;
    border-color: rgba(245, 158, 11, 0.32);
}

.desk-duplicate-list {
    display: grid;
    gap: 8px;
    margin-top: 10px;
}

.desk-duplicate-list a {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 10px;
}

.desk-duplicate-list b {
    color: #86efac;
    font-family: var(--font-mono);
}

.desk-duplicate-list em {
    color: #94a3b8;
    font-style: normal;
}

.desk-vip-explanation {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.24);
}

.desk-vip-explanation svg {
    color: #fecaca;
}

.desk-invalid-input {
    border-color: rgba(239, 68, 68, 0.65) !important;
}

.desk-admin-shell {
    gap: 14px;
}

.desk-admin-table-panel,
.desk-settings-section {
    padding: 16px;
}

.desk-admin-table-wrap {
    overflow-x: auto;
}

.desk-admin-table {
    border-collapse: separate;
    border-spacing: 0 8px;
    min-width: 980px;
    width: 100%;
}

.desk-admin-table th {
    color: #94a3b8;
    font-size: 11px;
    letter-spacing: .08em;
    padding: 0 10px 4px;
    text-align: left;
    text-transform: uppercase;
}

.desk-admin-table td {
    background: #080b10;
    border-bottom: 1px solid #1f2937;
    border-top: 1px solid #1f2937;
    color: #dce7e1;
    padding: 12px 10px;
    vertical-align: middle;
}

.desk-admin-table td:first-child {
    border-left: 1px solid #1f2937;
    border-radius: 12px 0 0 12px;
}

.desk-admin-table td:last-child {
    border-radius: 0 12px 12px 0;
    border-right: 1px solid #1f2937;
}

.desk-admin-table input,
.desk-admin-table select,
.desk-config-drawer input,
.desk-config-drawer select,
.desk-config-drawer textarea,
.desk-rule-builder input,
.desk-rule-builder select {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #f8fafc;
    min-height: 38px;
    padding: 0 10px;
    width: 100%;
}

.desk-config-drawer textarea {
    padding: 10px;
}

.desk-drag-handle,
.desk-toggle-row,
.desk-category-inline,
.desk-volume-cell {
    align-items: center;
    display: flex;
    gap: 10px;
}

.desk-drag-handle {
    color: #94a3b8;
    font-family: var(--font-mono);
    font-weight: 900;
}

.desk-category-icon,
.desk-rule-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.22);
    border-radius: 10px;
    color: #86efac;
    display: inline-flex;
    flex: 0 0 auto;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.desk-category-inline {
    min-width: 260px;
}

.desk-category-inline strong,
.desk-rule-card h2,
.desk-settings-section h2,
.desk-integration-grid strong {
    color: #f8fafc;
}

.desk-category-inline small,
.desk-volume-cell span,
.desk-inline-warning,
.desk-rule-card p,
.desk-rule-meta,
.desk-settings-section p,
.desk-integration-grid span {
    color: #94a3b8;
}

.desk-volume-cell {
    align-items: flex-start;
    flex-direction: column;
}

.desk-mini-sparkline {
    align-items: end;
    display: flex;
    gap: 3px;
    height: 36px;
}

.desk-mini-sparkline i {
    background: #22c55e;
    border-radius: 999px;
    display: block;
    opacity: .85;
    width: 5px;
}

.desk-toggle-row input {
    accent-color: #22c55e;
}

.desk-inline-warning {
    display: block;
    font-size: 11px;
    line-height: 1.35;
    margin-top: 6px;
    max-width: 260px;
}

.desk-config-drawer {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    display: grid;
    gap: 14px;
    padding: 16px;
}

.desk-config-drawer header h2,
.desk-config-drawer header p {
    margin: 0;
}

.desk-config-drawer header p {
    color: #94a3b8;
    margin-top: 6px;
}

.desk-config-drawer footer {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.desk-category-drawer[hidden] {
    display: none;
}

body.page-tickets .desk-category-drawer {
    bottom: 18px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
    max-width: min(460px, calc(100vw - 36px));
    overflow-y: auto;
    position: fixed;
    right: 18px;
    top: 18px;
    transform: translateX(calc(100% + 28px));
    transition: transform 180ms ease;
    width: 460px;
    z-index: 950;
}

body.page-tickets .desk-category-drawer.is-open {
    transform: translateX(0);
}

.desk-rule-list {
    display: grid;
    gap: 12px;
}

.desk-rule-card {
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 16px;
}

.desk-rule-card header,
.desk-rule-meta {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.desk-rule-card h2 {
    font-size: 16px;
    margin: 0;
}

.desk-rule-card p {
    margin: 6px 0;
}

.desk-rule-card p strong {
    color: #dce7e1;
}

.desk-rule-meta {
    justify-content: flex-start;
    margin-top: 8px;
}

.desk-rule-builder-section {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 12px;
    padding: 14px;
}

.desk-rule-builder-section h3 {
    color: #f8fafc;
    margin: 0;
}

.desk-rule-condition-row {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(160px, 1fr) minmax(140px, .8fr) minmax(120px, .8fr) auto;
}

.desk-shared-mapping {
    background: rgba(34, 197, 94, 0.08);
    border: 1px solid rgba(34, 197, 94, 0.18);
    border-radius: 12px;
    color: #94a3b8;
    padding: 12px;
}

.desk-shared-mapping strong {
    color: #f8fafc;
}

.desk-settings-hub {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: 240px minmax(0, 1fr);
}

.desk-settings-side-nav {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    display: grid;
    gap: 6px;
    padding: 10px;
}

.desk-settings-side-nav a {
    align-items: center;
    border-radius: 12px;
    color: #94a3b8;
    display: flex;
    font-size: 13px;
    font-weight: 900;
    gap: 10px;
    padding: 11px 12px;
}

.desk-settings-side-nav a.active,
.desk-settings-side-nav a:hover {
    background: rgba(34, 197, 94, 0.1);
    color: #f8fafc;
}

.desk-settings-content {
    display: grid;
    gap: 14px;
}

.desk-settings-check-grid,
.desk-integration-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.desk-integration-grid div {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 4px;
    padding: 12px;
}

.desk-audit-list {
    display: grid;
    gap: 10px;
}

.desk-audit-list article {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 4px;
    padding: 12px;
}

.desk-audit-list span,
.desk-audit-list p {
    color: #94a3b8;
    margin: 0;
}

.desk-audit-list strong {
    color: #f8fafc;
}

.desk-ticket-state {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-detail-grid {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) 360px;
}

.desk-detail-main,
.desk-detail-side {
    display: grid;
    gap: 18px;
}

.desk-panel {
    padding: 18px;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.desk-description {
    color: #dce7e1;
    line-height: 1.7;
    margin: 0;
}

.desk-inline-form {
    align-items: end;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
}

.desk-stack-form {
    display: grid;
    gap: 10px;
}

.desk-comments {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}

.desk-comment {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    padding: 14px;
}

.desk-comment div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: space-between;
}

.desk-comment strong {
    color: #f8fafc;
}

.desk-comment span,
.desk-comment p,
.desk-data-list dt {
    color: #94a3b8;
}

.desk-comment p {
    color: #dce7e1;
    margin: 10px 0 0;
}

.desk-comment-form {
    display: grid;
    gap: 10px;
}

.desk-comment-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.desk-data-list {
    display: grid;
    gap: 12px;
    margin: 0;
}

.desk-data-list div {
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.desk-data-list dt {
    font-size: 12px;
}

.desk-data-list dd {
    color: #f8fafc;
    font-weight: 800;
    margin: 0;
    text-align: right;
}

.desk-critical-input {
    border-color: rgba(239, 68, 68, 0.55) !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}

.desk-mini-list {
    display: grid;
    gap: 10px;
}

.desk-mini-list a {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    color: #dce7e1;
    display: grid;
    gap: 10px;
    grid-template-columns: 70px minmax(0, 1fr) auto;
    padding: 12px;
    text-decoration: none;
}

.desk-mini-list a:hover {
    border-color: rgba(34, 197, 94, 0.4);
}

.desk-mini-list strong,
.desk-mini-list em {
    color: #86efac;
    font-style: normal;
    font-weight: 900;
}

.desk-compact-header {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-top: 2px solid rgba(34, 197, 94, 0.45);
    border-radius: 14px;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    min-height: 64px;
    padding: 12px 14px;
}

.desk-compact-title {
    align-items: center;
    display: flex;
    gap: 14px;
    min-width: 0;
}

.desk-compact-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 10px;
    color: #86efac;
    display: inline-flex;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.desk-compact-title h1 {
    color: #f8fafc;
    font-size: 21px;
    line-height: 1.1;
    margin: 0;
}

.desk-compact-title span {
    color: #94a3b8;
    display: block;
    font-size: 13px;
    margin-top: 4px;
}

.desk-compact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.desk-panel-title-row {
    align-items: start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 14px;
}

.desk-panel-title-row p {
    color: #94a3b8;
    margin: -8px 0 0;
}

.partner-badge {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(134, 239, 172, 0.26);
    color: #86efac;
}

.service-kanban {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(5, minmax(180px, 1fr));
    overflow-x: auto;
    padding-bottom: 4px;
}

.kanban-column {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 10px;
    min-width: 180px;
    padding: 12px;
}

.kanban-column header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.kanban-column header strong {
    color: #f8fafc;
}

.kanban-column header span {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 999px;
    color: #86efac;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    min-height: 24px;
    padding: 0 8px;
}

.kanban-card {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    display: grid;
    gap: 5px;
    padding: 10px;
}

.kanban-card.priority-critical {
    border-left: 3px solid #ef4444;
}

.kanban-card span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 800;
}

.kanban-card strong {
    color: #f8fafc;
    font-size: 13px;
    line-height: 1.35;
}

.kanban-card small {
    color: #94a3b8;
}

.desk-central-shell {
    gap: 10px;
}

.desk-central-header {
    position: sticky;
    top: 0;
    z-index: 20;
}

.desk-central-search {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 999px;
    display: flex;
    flex: 1 1 360px;
    gap: 10px;
    min-height: 42px;
    min-width: 240px;
    padding: 0 14px;
}

.desk-central-search svg {
    color: #86efac;
    height: 17px;
    width: 17px;
}

.desk-central-search input {
    background: transparent;
    border: 0;
    color: #f8fafc;
    flex: 1;
    font: inherit;
    min-width: 0;
    outline: none;
}

.desk-central-search kbd,
.desk-command-panel kbd {
    background: #111827;
    border: 1px solid #263241;
    border-radius: 7px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 800;
    padding: 2px 6px;
}

.desk-search-preview {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 14px;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.36);
    display: none;
    gap: 8px;
    left: 0;
    min-width: min(520px, 80vw);
    padding: 12px;
    position: absolute;
    top: calc(100% + 8px);
    z-index: 45;
}

.desk-central-search:focus-within {
    border-color: rgba(34, 197, 94, 0.46);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.08);
    position: relative;
}

.desk-central-search:focus-within .desk-search-preview {
    display: grid;
}

.desk-search-preview strong {
    color: #f8fafc;
    font-size: 12px;
}

.desk-search-preview a {
    align-items: center;
    border: 1px solid #1f2937;
    border-radius: 10px;
    color: #cbd5e1;
    display: flex;
    gap: 8px;
    padding: 8px;
    text-decoration: none;
}

.desk-search-preview a:hover {
    background: #0d1117;
    color: #f8fafc;
}

.desk-view-switcher {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 999px;
    display: flex;
    gap: 4px;
    padding: 4px;
}

.desk-view-switcher a {
    align-items: center;
    border-radius: 999px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    text-decoration: none;
}

.desk-view-switcher a.active,
.desk-view-switcher a:hover {
    background: rgba(34, 197, 94, 0.1);
    color: #f8fafc;
}

.desk-kpi-strip {
    align-items: stretch;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 0;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    overflow: hidden;
}

.desk-kpi-link {
    border-right: 1px solid #1f2937;
    display: grid;
    gap: 6px;
    padding: 9px 11px;
    text-decoration: none;
}

.desk-kpi-link:last-child {
    border-right: 0;
}

.desk-kpi-link:hover {
    background: rgba(34, 197, 94, 0.06);
}

.desk-kpi-link span {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.desk-kpi-link strong {
    color: #f8fafc;
    font-size: 18px;
    line-height: 1;
}

.desk-kpi-link.critical strong {
    color: #fecaca;
}

.desk-kpi-link.warning strong {
    color: #fde68a;
}

.desk-kpi-link.rmm strong {
    color: #93c5fd;
}

.desk-kpi-topline {
    align-items: center;
    display: flex;
    gap: 6px;
    justify-content: space-between;
}

.desk-kpi-topline svg {
    color: #86efac;
    height: 15px;
    width: 15px;
}

.desk-kpi-trend {
    color: #86efac;
    font-size: 11px;
    font-weight: 900;
}

.desk-kpi-topline em {
    color: #86efac;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
}

.desk-kpi-spark {
    align-items: end;
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(6, 1fr);
    height: 18px;
}

.desk-kpi-spark i {
    background: linear-gradient(180deg, rgba(134, 239, 172, 0.72), rgba(34, 197, 94, 0.14));
    border-radius: 999px 999px 2px 2px;
    min-height: 4px;
}

.desk-filter-commandbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-primary-filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-view-select {
    position: relative;
}

.desk-view-select summary {
    align-items: center;
    background: linear-gradient(180deg, #101720, #0d1117);
    border: 1px solid #263241;
    border-radius: 999px;
    color: #f8fafc;
    cursor: pointer;
    display: inline-flex;
    font-size: 12px;
    font-weight: 900;
    gap: 6px;
    list-style: none;
    min-height: 36px;
    padding: 0 13px;
}

.desk-view-select summary span {
    color: #86efac;
}

.desk-view-select summary::-webkit-details-marker {
    display: none;
}

.desk-rich-popover {
    animation: deskPopoverIn 140ms ease;
}

@keyframes deskPopoverIn {
    from { opacity: 0; transform: translateY(-4px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.desk-popover-search,
.desk-mini-form input {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #f8fafc;
    min-height: 34px;
    padding: 0 10px;
}

.desk-popover em {
    color: #64748b;
    font-style: normal;
    margin-left: auto;
}

.desk-more-filter-grid {
    gap: 14px;
    grid-template-columns: repeat(2, minmax(210px, 1fr));
    min-width: min(720px, 90vw);
    right: 0;
    left: auto;
}

.desk-more-filter-grid section {
    display: grid;
    gap: 7px;
}

.desk-more-filter-grid > .desk-popover-actions {
    grid-column: 1 / -1;
}

.desk-filter-chipbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-filter-chip {
    position: relative;
}

.desk-filter-chip summary,
.desk-filter-toggle {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    list-style: none;
    min-height: 36px;
    padding: 0 13px;
}

.desk-filter-chip summary::-webkit-details-marker {
    display: none;
}

.desk-filter-chip[open] summary,
.desk-filter-chip summary:hover,
.desk-filter-toggle:hover {
    background: #111827;
    border-color: rgba(34, 197, 94, 0.32);
    color: #f8fafc;
}

.desk-filter-toggle {
    font-family: inherit;
}

.desk-popover {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 14px;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.36);
    color: #cbd5e1;
    display: grid;
    gap: 10px;
    left: 0;
    min-width: 240px;
    padding: 12px;
    position: absolute;
    top: calc(100% + 8px);
    z-index: 30;
}

.desk-popover label,
.desk-popover a,
.desk-popover button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #cbd5e1;
    display: flex;
    font: inherit;
    font-size: 13px;
    gap: 8px;
    justify-content: space-between;
    padding: 3px 0;
    text-align: left;
    text-decoration: none;
}

.desk-popover button:hover,
.desk-popover a:hover {
    color: #f8fafc;
}

.desk-popover label span,
.desk-popover button span {
    color: #86efac;
    font-size: 12px;
    font-weight: 800;
}

.desk-popover-actions {
    border-top: 1px solid #1f2937;
    display: flex;
    gap: 8px;
    padding-top: 10px;
}

.desk-selection-bar {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 14px;
    color: #94a3b8;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 10px 12px;
}

.desk-realtime-chip {
    align-items: center;
    align-self: start;
    background: rgba(14, 165, 233, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.22);
    border-radius: 999px;
    color: #bae6fd;
    display: inline-flex;
    font-size: 12px;
    font-weight: 850;
    gap: 8px;
    padding: 6px 9px;
}

.desk-realtime-chip svg {
    animation: deskPulse 2s ease-in-out infinite;
    height: 14px;
    width: 14px;
}

.desk-realtime-chip button {
    background: transparent;
    border: 0;
    color: #86efac;
    cursor: pointer;
    font: inherit;
    font-weight: 900;
    padding: 0;
}

@keyframes deskPulse {
    0%, 100% { opacity: 0.5; transform: scale(0.92); }
    50% { opacity: 1; transform: scale(1.08); }
}

.desk-live-indicator svg {
    color: #86efac;
}

.desk-live-indicator span,
.desk-selection-bar span {
    margin-right: auto;
}

.desk-selection-bar strong {
    color: #f8fafc;
}

.desk-selection-bar[hidden] {
    display: none;
}

.desk-selection-bar:not([hidden]) {
    animation: deskSelectionIn 180ms ease;
}

@keyframes deskSelectionIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.desk-selection-bar > div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-central-workspace {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1.5fr) minmax(360px, 0.8fr);
}

.desk-central-list-pane {
    min-width: 0;
}

.desk-ticket-table-panel {
    padding: 16px;
}

.desk-ticket-table-wrap {
    overflow-x: auto;
}

.desk-ticket-table {
    border-collapse: separate;
    border-spacing: 0 8px;
    min-width: 1120px;
    width: 100%;
}

.desk-ticket-table th {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 800;
    padding: 0 10px 4px;
    text-align: left;
    text-transform: uppercase;
}

.desk-ticket-table td {
    background: #080b10;
    border-bottom: 1px solid #1f2937;
    border-top: 1px solid #1f2937;
    color: #cbd5e1;
    padding: 10px 10px;
    position: relative;
    vertical-align: middle;
}

.desk-ticket-table td:first-child {
    border-left: 1px solid #1f2937;
    border-radius: 12px 0 0 12px;
    width: 34px;
}

.desk-ticket-table td:last-child {
    border-radius: 0 12px 12px 0;
    border-right: 1px solid #1f2937;
}

.desk-ticket-row.priority-critical td:first-child {
    box-shadow: inset 4px 0 0 #ef4444;
}

.desk-ticket-row.priority-high td:first-child {
    box-shadow: inset 3px 0 0 #f59e0b;
}

.desk-ticket-row.is-selected td {
    background: #0d1117;
}

.desk-ticket-row:hover td,
.desk-ticket-row:focus-within td {
    background: #0b1118;
    border-color: rgba(34, 197, 94, 0.25);
}

.desk-ticket-row:focus {
    outline: 2px solid rgba(34, 197, 94, 0.45);
    outline-offset: 2px;
}

.desk-ticket-row.is-paused td {
    background: rgba(8, 11, 16, 0.78);
    color: #94a3b8;
}

.desk-ticket-row.is-unassigned td {
    border-color: rgba(251, 191, 36, 0.24);
}

.desk-ticket-row.is-rmm td {
    background: linear-gradient(90deg, rgba(37, 99, 235, 0.10), #080b10 18%);
}

.desk-ticket-row.is-live-updated td {
    animation: deskLiveRow 4s ease;
}

@keyframes deskLiveRow {
    0% { box-shadow: inset 0 0 0 999px rgba(34, 197, 94, 0.12); }
    100% { box-shadow: inset 0 0 0 999px rgba(34, 197, 94, 0); }
}

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

.desk-row-origin-icon {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #86efac;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.desk-row-origin-icon svg,
.desk-origin-badge svg,
.desk-mini-flag svg {
    height: 14px;
    width: 14px;
}

.desk-mini-flag {
    align-items: center;
    color: #94a3b8;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 4px;
}

.desk-row-preview {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.32);
    display: none;
    left: 72px;
    max-width: 460px;
    padding: 12px;
    position: absolute;
    top: calc(100% - 2px);
    z-index: 25;
}

.desk-ticket-row:hover .desk-row-preview {
    animation: deskPreviewDelay 620ms ease forwards;
    display: block;
    opacity: 0;
}

@keyframes deskPreviewDelay {
    0%, 80% { opacity: 0; }
    100% { opacity: 1; }
}

.desk-row-preview strong {
    color: #f8fafc;
}

.desk-row-preview p,
.desk-row-preview small,
.desk-muted {
    color: #94a3b8;
}

.desk-sla-indicator {
    align-items: center;
    color: #f8fafc;
    display: inline-flex;
    font-size: 12px;
    font-weight: 900;
    gap: 7px;
    white-space: nowrap;
}

.desk-sla-indicator svg {
    height: 14px;
    width: 14px;
}

.desk-sla-indicator.sla-critical {
    color: #fecaca;
}

.desk-sla-indicator.sla-warning {
    color: #fde68a;
}

.desk-origin-badge,
.desk-endpoint-chip,
.desk-rmm-alert-pill {
    align-items: center;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    gap: 6px;
    padding: 5px 8px;
    white-space: nowrap;
}

.desk-origin-badge.origin-rmm {
    background: rgba(37, 99, 235, 0.12);
    border-color: rgba(96, 165, 250, 0.28);
    color: #bfdbfe;
}

.desk-origin-badge.origin-manual {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.2);
}

.desk-rmm-row-note {
    color: #93c5fd;
    display: block;
    font-size: 11px;
    margin-top: 5px;
}

.desk-endpoint-chip {
    background: #0d1117;
    font-size: 12px;
}

.desk-endpoint-chip i,
.desk-status-dot,
.desk-technician-status {
    border-radius: 999px;
    display: inline-block;
    height: 8px;
    width: 8px;
}

.desk-endpoint-chip.status-online i,
.desk-status-dot.status-online,
.desk-technician-status.online {
    background: #22c55e;
}

.desk-endpoint-chip.status-offline i,
.desk-status-dot.status-offline,
.desk-technician-status.busy {
    background: #ef4444;
}

.desk-technician-status.away {
    background: #f59e0b;
}

.desk-inline-popover {
    position: relative;
}

.desk-inline-popover summary {
    cursor: pointer;
    list-style: none;
}

.desk-inline-popover summary::-webkit-details-marker {
    display: none;
}

.desk-assignee-pill {
    align-items: center;
    color: #f8fafc;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
}

.desk-assignee-pill.is-unassigned .desk-avatar {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.34);
    color: #fde68a;
}

.desk-avatar {
    align-items: center;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 999px;
    color: #86efac;
    display: inline-flex;
    font-size: 12px;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.desk-assignee-popover {
    right: 0;
    left: auto;
}

.desk-assignee-popover button {
    gap: 8px;
}

.desk-status-popover {
    min-width: 280px;
}

.desk-mini-form {
    align-items: stretch !important;
    border-top: 1px solid #1f2937 !important;
    display: grid !important;
    gap: 6px !important;
    padding-top: 10px !important;
}

.desk-category-cell {
    min-width: 170px;
}

.desk-row-hover-actions {
    align-items: center;
    display: inline-flex;
    gap: 4px;
    margin-left: 8px;
    opacity: 0;
    pointer-events: none;
    transform: translateX(4px);
    transition: opacity 140ms ease, transform 140ms ease;
}

.desk-ticket-row:hover .desk-row-hover-actions,
.desk-ticket-row:focus-within .desk-row-hover-actions {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

.desk-icon-action {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 9px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    padding: 0;
    text-decoration: none;
    width: 30px;
}

.desk-icon-action:hover {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.35);
    color: #f8fafc;
}

.desk-icon-action svg {
    height: 15px;
    width: 15px;
}

.desk-detail-panel {
    align-self: start;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    display: grid;
    gap: 14px;
    max-height: calc(100vh - 118px);
    min-height: 520px;
    overflow: hidden;
    position: sticky;
    top: 78px;
}

.desk-detail-panel-header {
    align-items: start;
    border-bottom: 1px solid #1f2937;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 16px 16px 0;
}

.desk-preview-header-actions,
.desk-preview-badges,
.desk-rmm-actions,
.desk-quick-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-detail-panel-header h2 {
    color: #f8fafc;
    font-size: 18px;
    line-height: 1.25;
    margin: 10px 0 4px;
}

.desk-detail-panel-header p {
    color: #94a3b8;
    margin: 0 0 14px;
}

.desk-detail-inline-state,
.desk-detail-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 16px;
}

.desk-detail-panel-body {
    display: grid;
    gap: 14px;
    overflow: auto;
    padding: 0 16px;
}

.desk-suggestion-card,
.desk-preview-stat,
.desk-rmm-mini-card {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

.desk-suggestion-card {
    align-items: start;
    display: flex;
}

.desk-suggestion-card svg {
    color: #86efac;
    flex: 0 0 auto;
    height: 18px;
    width: 18px;
}

.desk-suggestion-card.priority-critical {
    border-color: rgba(239, 68, 68, 0.28);
}

.desk-suggestion-card strong,
.desk-preview-stat strong,
.desk-rmm-mini-card h3 {
    color: #f8fafc;
}

.desk-suggestion-card p,
.desk-preview-stat small {
    color: #94a3b8;
    margin: 0;
}

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

.desk-preview-stat span,
.desk-section-eyebrow {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.desk-rmm-mini-card {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.16), #080b10 38%);
    border-color: rgba(96, 165, 250, 0.26);
}

.desk-rmm-mini-card header {
    align-items: start;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.desk-rmm-mini-card h3 {
    margin: 3px 0;
}

.desk-rmm-mini-card p {
    color: #94a3b8;
    margin: 0;
}

.desk-rmm-metrics {
    display: grid;
    gap: 8px;
}

.desk-rmm-metrics div {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: 42px 1fr 42px;
}

.desk-rmm-metrics span,
.desk-rmm-metrics strong {
    color: #cbd5e1;
    font-size: 12px;
}

.desk-rmm-metrics meter {
    height: 8px;
    width: 100%;
}

.desk-rmm-alert-pill {
    background: rgba(37, 99, 235, 0.14);
    border-color: rgba(96, 165, 250, 0.32);
    color: #bfdbfe;
}

.desk-preview-timeline {
    display: grid;
    gap: 8px;
}

.desk-preview-timeline div {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 8px;
    grid-template-columns: 28px 1fr auto;
    padding: 10px;
}

.desk-preview-timeline svg {
    color: #86efac;
    height: 16px;
    width: 16px;
}

.desk-preview-timeline strong {
    color: #f8fafc;
}

.desk-preview-timeline span {
    color: #94a3b8;
    font-size: 12px;
}

.desk-detail-section {
    display: grid;
    gap: 10px;
}

.desk-detail-section h3 {
    color: #f8fafc;
    font-size: 14px;
    margin: 0;
}

.desk-detail-section p {
    color: #dce7e1;
    line-height: 1.6;
    margin: 0;
}

.desk-comment-dock {
    background: #080b10;
    border-top: 1px solid #1f2937;
    display: grid;
    gap: 10px;
    padding: 14px 16px 16px;
}

.desk-comment-dock textarea {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #f8fafc;
    padding: 12px;
    resize: vertical;
}

.desk-comment-dock > div {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.desk-grouped-list {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(220px, 1fr));
}

.desk-group-column {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

.desk-group-column header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.desk-group-column header strong {
    color: #f8fafc;
}

.desk-group-column header span {
    color: #86efac;
    font-weight: 900;
}

.desk-group-ticket {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    display: grid;
    gap: 5px;
    padding: 10px;
    text-decoration: none;
}

.desk-group-ticket.priority-critical {
    border-left: 3px solid #ef4444;
}

.desk-group-ticket span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 800;
}

.desk-group-ticket strong {
    color: #f8fafc;
    font-size: 13px;
}

.desk-group-ticket small {
    color: #94a3b8;
}

.desk-context-menu {
    display: none;
}

.desk-shortcuts-overlay[hidden],
.desk-command-palette[hidden],
.desk-toast[hidden] {
    display: none;
}

.desk-shortcuts-overlay,
.desk-command-palette {
    align-items: start;
    background: rgba(2, 6, 23, 0.74);
    backdrop-filter: blur(8px);
    display: grid;
    inset: 0;
    justify-items: center;
    padding-top: 10vh;
    position: fixed;
    z-index: 90;
}

.desk-overlay-panel,
.desk-command-panel {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 18px;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.46);
    max-width: 760px;
    padding: 16px;
    width: min(760px, calc(100vw - 32px));
}

.desk-overlay-panel header,
.desk-command-panel header {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.desk-overlay-panel h2 {
    color: #f8fafc;
    font-size: 18px;
    margin: 0;
}

.desk-overlay-panel dl {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 16px 0 0;
}

.desk-overlay-panel dl div {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: flex;
    justify-content: space-between;
    padding: 10px;
}

.desk-overlay-panel dt {
    color: #86efac;
    font-weight: 900;
}

.desk-overlay-panel dd {
    color: #cbd5e1;
    margin: 0;
}

.desk-command-panel header {
    border-bottom: 1px solid #1f2937;
    padding-bottom: 12px;
}

.desk-command-panel header svg {
    color: #86efac;
}

.desk-command-panel input {
    background: transparent;
    border: 0;
    color: #f8fafc;
    flex: 1;
    font: inherit;
    outline: none;
}

.desk-command-groups {
    display: grid;
    gap: 14px;
    margin-top: 14px;
}

.desk-command-groups section {
    display: grid;
    gap: 7px;
}

.desk-command-groups strong {
    color: #94a3b8;
    font-size: 11px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.desk-command-groups a,
.desk-command-groups button {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 12px;
    color: #f8fafc;
    display: flex;
    font: inherit;
    gap: 10px;
    justify-content: space-between;
    padding: 10px;
    text-align: left;
    text-decoration: none;
}

.desk-command-groups a:hover,
.desk-command-groups button:hover {
    border-color: rgba(34, 197, 94, 0.32);
}

.desk-command-groups span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 900;
}

.desk-toast-stack {
    bottom: 18px;
    display: grid;
    gap: 8px;
    position: fixed;
    right: 18px;
    z-index: 100;
}

.desk-toast {
    align-items: center;
    animation: deskToastIn 180ms ease;
    background: #080b10;
    border: 1px solid rgba(34, 197, 94, 0.34);
    border-radius: 14px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.36);
    color: #f8fafc;
    display: flex;
    gap: 10px;
    padding: 12px;
}

.desk-toast svg {
    color: #86efac;
}

.desk-toast button {
    background: transparent;
    border: 0;
    color: #86efac;
    cursor: pointer;
    font: inherit;
    font-weight: 900;
}

@keyframes deskToastIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.desk-modal {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 16px;
    color: #cbd5e1;
    display: none;
    gap: 12px;
    max-width: 560px;
    padding: 18px;
}

.desk-modal[open] {
    display: grid;
}

.desk-modal::backdrop {
    background: rgba(2, 6, 23, 0.72);
}

.desk-ticket-detail-shell {
    gap: 14px;
}

.desk-ticket-detail-header {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-top: 2px solid rgba(34, 197, 94, 0.45);
    border-radius: 14px;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto auto;
    padding: 14px;
    position: relative;
}

.desk-detail-heading {
    align-items: center;
    display: flex;
    gap: 12px;
    min-width: 0;
}

.desk-editable-title {
    align-items: center;
    display: flex;
    gap: 8px;
    min-width: 0;
}

.desk-editable-title h1 {
    color: #f8fafc;
    font-size: 22px;
    line-height: 1.2;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.desk-editable-title button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #86efac;
    cursor: pointer;
    display: inline-flex;
    padding: 4px;
}

.desk-detail-header-meta,
.desk-detail-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.desk-sla-chip {
    align-items: center;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #dce7e1;
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    gap: 6px;
    min-height: 26px;
    padding: 0 10px;
    text-transform: uppercase;
}

.desk-sla-chip svg {
    height: 14px;
    width: 14px;
}

.desk-sla-chip.desk-sla-critical {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.24);
    color: #fecaca;
}

.desk-sla-chip.desk-sla-warning {
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.24);
    color: #fbbf24;
}

.desk-sla-chip.desk-sla-ok {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
    color: #86efac;
}

.desk-kebab-menu .desk-popover {
    left: auto;
    right: 0;
}

.desk-presence-indicator {
    align-items: center;
    bottom: -36px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 12px;
    gap: 6px;
    position: absolute;
    right: 14px;
}

.desk-presence-indicator svg {
    color: #86efac;
    height: 14px;
    width: 14px;
}

.desk-detail-tabbar {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
}

.desk-detail-tabbar a {
    align-items: center;
    border-radius: 10px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    padding: 10px 12px;
    text-decoration: none;
}

.desk-detail-tabbar a.active,
.desk-detail-tabbar a:hover {
    background: rgba(34, 197, 94, 0.1);
    color: #f8fafc;
}

.desk-detail-tab-section {
    scroll-margin-top: 96px;
}

.desk-detail-layout {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) 360px;
}

.desk-overview-main,
.desk-overview-side {
    display: grid;
    gap: 14px;
}

.desk-activity-feed {
    display: grid;
    gap: 10px;
}

.desk-overview-main .desk-activity-panel {
    align-self: start;
}

.desk-overview-main .desk-activity-panel .desk-panel-title-row {
    margin-bottom: 8px;
}

.desk-overview-main .desk-activity-panel .desk-activity-feed {
    max-height: 300px;
    overflow-y: auto;
    padding-right: 4px;
}

.desk-overview-main .desk-activity-panel .desk-activity-item {
    border-radius: 12px;
    gap: 10px;
    padding: 10px;
}

.desk-overview-main .desk-activity-panel .desk-activity-icon {
    height: 30px;
    width: 30px;
}

.desk-activity-item {
    align-items: start;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 12px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 12px;
}

.desk-activity-item.activity-sla {
    border-color: rgba(245, 158, 11, 0.26);
}

.desk-activity-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 999px;
    color: #86efac;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.desk-activity-item header {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.desk-activity-item strong {
    color: #f8fafc;
}

.desk-activity-item small,
.desk-activity-item p {
    color: #94a3b8;
}

.desk-activity-item p {
    line-height: 1.55;
    margin: 4px 0 0;
}

.desk-composer {
    display: grid;
    gap: 10px;
}

.desk-composer textarea,
.desk-resolution-drawer textarea,
.desk-resolution-drawer input,
.desk-resolution-drawer select {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #f8fafc;
    padding: 12px;
}

.desk-composer-toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.desk-dropzone,
.desk-attachment-dropzone {
    align-items: center;
    background: #080b10;
    border: 1px dashed #263241;
    border-radius: 14px;
    color: #94a3b8;
    display: flex;
    gap: 8px;
    justify-content: center;
    min-height: 54px;
    padding: 12px;
}

.desk-person-card,
.desk-device-summary,
.desk-device-hero-card {
    align-items: center;
    display: flex;
    gap: 12px;
}

.desk-person-card strong,
.desk-device-summary strong,
.desk-device-hero-card strong {
    color: #f8fafc;
    display: block;
}

.desk-person-card span,
.desk-device-summary span,
.desk-device-hero-card span,
.desk-device-hero-card small {
    color: #94a3b8;
}

.desk-sla-progress {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 10px;
    overflow: hidden;
    padding: 12px;
}

.desk-sla-progress div {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.desk-sla-progress span {
    color: #94a3b8;
}

.desk-sla-progress strong {
    color: #f8fafc;
}

.desk-sla-fill {
    background: #22c55e;
    border-radius: 999px;
    display: block;
    height: 8px;
}

.desk-sla-fill.desk-sla-warning {
    background: #f59e0b;
}

.desk-sla-fill.desk-sla-critical {
    background: #ef4444;
}

.desk-device-status {
    background: #94a3b8;
    border-radius: 999px;
    box-shadow: 0 0 0 5px rgba(148, 163, 184, 0.1);
    height: 12px;
    width: 12px;
}

.desk-device-status.status-online {
    background: #22c55e;
}

.desk-device-status.status-offline {
    background: #ef4444;
}

.desk-device-panel {
    display: grid;
    gap: 14px;
}

.desk-device-hero-card {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 16px;
    justify-content: space-between;
    padding: 14px;
}

.desk-device-large-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 14px;
    color: #86efac;
    display: inline-flex;
    height: 48px;
    justify-content: center;
    width: 48px;
}

.desk-device-metrics,
.desk-device-status-grid,
.desk-attachment-grid,
.desk-related-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.desk-device-metric,
.desk-device-status-grid article,
.desk-attachment-card,
.desk-related-grid section {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    padding: 14px;
}

.desk-device-metric header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.desk-device-metric strong,
.desk-device-status-grid strong,
.desk-related-grid h3 {
    color: #f8fafc;
}

.desk-device-metric span,
.desk-device-status-grid span {
    color: #94a3b8;
    font-size: 12px;
}

.desk-device-metric div {
    background: rgba(148, 163, 184, 0.12);
    border-radius: 999px;
    height: 9px;
    margin-top: 12px;
    overflow: hidden;
}

.desk-device-metric i {
    background: #22c55e;
    display: block;
    height: 100%;
}

.desk-device-metric.metric-warning i {
    background: #f59e0b;
}

.desk-device-metric.metric-critical i,
.desk-device-metric.metric-critical i {
    background: #ef4444;
}

.desk-attachment-card {
    display: grid;
    gap: 8px;
}

.desk-attachment-thumb {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #86efac;
    display: flex;
    height: 96px;
    justify-content: center;
}

.desk-attachment-card strong {
    color: #f8fafc;
}

.desk-attachment-card span {
    color: #94a3b8;
}

.desk-related-item {
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #dce7e1;
    display: grid;
    gap: 4px;
    margin-top: 8px;
    padding: 10px;
    text-decoration: none;
}

.desk-related-item strong {
    color: #86efac;
}

.desk-related-item:hover {
    border-color: rgba(34, 197, 94, 0.38);
}

.desk-related-overlay,
.desk-resolution-drawer,
.desk-audit-drawer {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    display: grid;
    gap: 12px;
    margin-top: 14px;
    padding: 16px;
}

.desk-resolution-drawer,
.desk-audit-drawer {
    display: none;
}

.desk-resolution-drawer h2,
.desk-audit-drawer h2 {
    color: #f8fafc;
    margin: 0;
}

.desk-resolution-drawer p,
.desk-audit-drawer p {
    color: #94a3b8;
    margin: 4px 0 0;
}

.desk-resolution-drawer label {
    display: grid;
    gap: 7px;
}

.desk-resolution-drawer label span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.desk-resolution-checklist {
    display: grid;
    gap: 8px;
}

.desk-resolution-drawer footer {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.desk-resolution-drawer footer form {
    margin: 0;
}

.desk-dashboard-shell {
    gap: 14px;
}

.desk-dashboard-header {
    align-items: center;
}

.desk-dashboard-controls {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.desk-dashboard-toggle {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 8px;
    min-height: 36px;
    padding: 0 13px;
}

.desk-dashboard-mode-tabs {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
}

.desk-dashboard-mode-tabs a {
    align-items: center;
    border-radius: 10px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    padding: 10px 12px;
    text-decoration: none;
}

.desk-dashboard-mode-tabs a.active,
.desk-dashboard-mode-tabs a:hover {
    background: rgba(34, 197, 94, 0.1);
    color: #f8fafc;
}

.desk-dashboard-mode-tabs .desk-btn {
    margin-left: auto;
}

.desk-dashboard-kpi-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.desk-dashboard-kpi-card {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    color: inherit;
    display: grid;
    gap: 12px;
    min-height: 130px;
    padding: 14px;
    text-decoration: none;
}

.desk-dashboard-kpi-card:hover {
    background: #111827;
    border-color: rgba(34, 197, 94, 0.32);
}

.desk-dashboard-kpi-card header {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.desk-dashboard-kpi-card span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.desk-dashboard-kpi-card strong {
    color: #f8fafc;
    font-size: 28px;
    line-height: 1;
}

.desk-trend-badge {
    border: 1px solid #263241;
    border-radius: 999px;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
    padding: 4px 8px;
}

.desk-trend-badge.trend-positive {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
    color: #86efac;
}

.desk-trend-badge.trend-negative {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.24);
    color: #fecaca;
}

.desk-sparkline {
    align-items: end;
    display: flex;
    gap: 4px;
    height: 34px;
}

.desk-sparkline i {
    background: linear-gradient(180deg, #86efac, #22c55e);
    border-radius: 999px 999px 0 0;
    flex: 1;
    min-width: 5px;
}

.desk-widget-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.desk-widget {
    grid-column: span 6;
}

.desk-anomaly-banner {
    align-items: center;
    background: #0d1117;
    border: 1px solid rgba(245, 158, 11, 0.28);
    border-radius: 16px;
    display: flex;
    gap: 12px;
    grid-column: 1 / -1;
    padding: 14px;
}

.desk-anomaly-banner > svg {
    color: #f59e0b;
}

.desk-anomaly-banner strong {
    color: #f8fafc;
    display: block;
}

.desk-anomaly-banner span {
    color: #94a3b8;
}

.desk-anomaly-banner div {
    margin-right: auto;
}

.desk-heatmap-widget,
.desk-ranking-widget,
.desk-fleet-health {
    grid-column: span 6;
}

.desk-heatmap {
    display: grid;
    gap: 6px;
    grid-template-columns: 54px repeat(5, minmax(56px, 1fr));
    overflow-x: auto;
}

.desk-heatmap-head,
.desk-heatmap-day {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.desk-heatmap-day {
    align-items: center;
    display: flex;
}

.desk-heatmap-cell {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 10px;
    color: #f8fafc;
    display: flex;
    justify-content: center;
    min-height: 46px;
    overflow: hidden;
    position: relative;
    text-decoration: none;
}

.desk-heatmap-cell span {
    background: #22c55e;
    inset: 0;
    position: absolute;
}

.desk-heatmap-cell strong {
    position: relative;
    z-index: 1;
}

.desk-ranking-table-wrap {
    overflow-x: auto;
}

.desk-ranking-table {
    border-collapse: separate;
    border-spacing: 0 8px;
    min-width: 640px;
    width: 100%;
}

.desk-ranking-table th {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    padding: 0 10px 4px;
    text-align: left;
    text-transform: uppercase;
}

.desk-ranking-table td {
    background: #080b10;
    border-bottom: 1px solid #1f2937;
    border-top: 1px solid #1f2937;
    color: #cbd5e1;
    padding: 12px 10px;
}

.desk-ranking-table td:first-child {
    border-left: 1px solid #1f2937;
    border-radius: 12px 0 0 12px;
}

.desk-ranking-table td:last-child {
    border-radius: 0 12px 12px 0;
    border-right: 1px solid #1f2937;
}

.desk-ranking-table tr.is-best td:first-child {
    box-shadow: inset 3px 0 0 #22c55e;
}

.desk-ranking-table a {
    color: #f8fafc;
    font-weight: 900;
    text-decoration: none;
}

.desk-fleet-summary,
.desk-device-status-grid,
.desk-fleet-bars {
    display: grid;
    gap: 12px;
}

.desk-fleet-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.desk-fleet-summary article {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 6px;
    padding: 14px;
}

.desk-fleet-summary span,
.desk-fleet-summary small {
    color: #94a3b8;
    font-size: 12px;
}

.desk-fleet-summary strong {
    color: #f8fafc;
    font-size: 20px;
}

.desk-fleet-summary em {
    color: #86efac;
    font-size: 13px;
    font-style: normal;
}

.desk-fleet-bar header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.desk-fleet-bar span {
    color: #94a3b8;
}

.desk-fleet-bar strong {
    color: #f8fafc;
}

.desk-fleet-bar div {
    background: rgba(148, 163, 184, 0.12);
    border-radius: 999px;
    height: 9px;
    margin-top: 8px;
    overflow: hidden;
}

.desk-fleet-bar i {
    background: #22c55e;
    display: block;
    height: 100%;
}

.desk-fleet-bar.level-warning i {
    background: #f59e0b;
}

.desk-fleet-bar.level-critical i {
    background: #ef4444;
}

.desk-sla-gauge-widget {
    grid-column: span 3;
}

.desk-sla-gauge {
    align-items: center;
    aspect-ratio: 1;
    background:
        radial-gradient(circle at center, #0d1117 58%, transparent 59%),
        conic-gradient(#22c55e var(--gauge-value), rgba(148, 163, 184, 0.14) 0);
    border: 1px solid #1f2937;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    margin: 0 auto 12px;
    max-width: 190px;
}

.desk-sla-gauge div {
    display: grid;
    gap: 4px;
    text-align: center;
}

.desk-sla-gauge strong {
    color: #f8fafc;
    font-size: 32px;
}

.desk-sla-gauge span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.desk-dashboard-annotations {
    grid-column: span 3;
}

.desk-annotation-list {
    display: grid;
    gap: 10px;
}

.desk-annotation-list article {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: 56px minmax(0, 1fr);
    padding: 12px;
}

.desk-annotation-list strong,
.desk-annotation-list span {
    color: #f8fafc;
    font-weight: 900;
}

.desk-annotation-list p {
    color: #94a3b8;
    margin: 4px 0 0;
}

.desk-wallboard-panel,
.desk-report-popover {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 16px;
    display: none;
    gap: 12px;
    padding: 16px;
}

.desk-report-popover {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1180px) {
    .desk-ticket-card,
    .desk-detail-grid {
        grid-template-columns: 1fr;
    }

    .desk-compact-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .desk-compact-actions {
        justify-content: flex-start;
    }

    .desk-ticket-actions {
        justify-content: flex-start;
    }

    .desk-central-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .desk-central-workspace {
        grid-template-columns: 1fr;
    }

    .desk-ticket-detail-header,
    .desk-detail-layout,
    .desk-dashboard-header {
        grid-template-columns: 1fr;
    }

    .desk-detail-header-meta,
    .desk-detail-actions {
        justify-content: flex-start;
    }

    .desk-detail-panel {
        max-height: none;
        min-height: 0;
        position: static;
    }

    .desk-kpi-strip,
    .desk-grouped-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .desk-form-grid,
    .desk-inline-form {
        grid-template-columns: 1fr;
    }

    .desk-kpi-strip,
    .desk-grouped-list {
        grid-template-columns: 1fr;
    }

    .desk-kpi-link {
        border-right: 0;
        border-bottom: 1px solid #1f2937;
    }

    .desk-kpi-link:last-child {
        border-bottom: 0;
    }

    .desk-live-indicator,
    .desk-selection-bar,
    .desk-comment-dock > div,
    .desk-composer-toolbar,
    .desk-resolution-drawer footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .desk-device-metrics,
    .desk-device-status-grid,
    .desk-attachment-grid,
    .desk-related-grid,
    .desk-alert-preview-grid,
    .desk-category-suggestions,
    .desk-requester-autofill,
    .desk-dashboard-kpi-grid,
    .desk-widget-grid,
    .desk-fleet-summary,
    .desk-report-popover {
        grid-template-columns: 1fr;
    }

    .desk-create-quick-form,
    .desk-create-device-card,
    .desk-duplicate-list a,
    .desk-settings-hub,
    .desk-rule-card,
    .desk-rule-condition-row,
    .desk-settings-check-grid,
    .desk-integration-grid {
        grid-template-columns: 1fr;
    }

    .desk-create-draft,
    .desk-duplicate-notice {
        align-items: flex-start;
        flex-direction: column;
    }

    .desk-create-draft .desk-btn,
    .desk-duplicate-notice .desk-btn {
        margin-left: 0;
    }

    .desk-widget,
    .desk-heatmap-widget,
    .desk-ranking-widget,
    .desk-fleet-health,
    .desk-sla-gauge-widget,
    .desk-dashboard-annotations {
        grid-column: 1 / -1;
    }

    .desk-device-hero-card,
    .desk-detail-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

.agent-install-metrics {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 18px;
}

.agent-hero-badges,
.agent-mode-badges,
.agent-created-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.agent-install-grid {
    display: grid;
    grid-template-columns: minmax(420px, 1.15fr) minmax(340px, 0.85fr);
    gap: 18px;
    align-items: start;
    margin-bottom: 18px;
}

.agent-install-hero {
    align-items: center;
}

.agent-install-hero .badge {
    align-self: flex-start;
    margin-top: 10px;
}

.agent-command-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
    gap: 18px;
    align-items: start;
    margin-bottom: 18px;
}

.agent-form-panel,
.how-to-panel,
.enrollment-created-panel,
.agent-command-panel,
.agent-package-panel,
.agent-token-list-panel {
    padding: 0;
    overflow: hidden;
}

.agent-form-panel .panel-heading,
.how-to-panel .panel-heading,
.enrollment-created-panel .panel-heading,
.agent-command-panel .panel-heading,
.agent-package-panel .panel-heading,
.agent-token-list-panel .panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 18px 0;
}

.agent-form-panel .panel-heading h2,
.how-to-panel .panel-heading h2,
.enrollment-created-panel .panel-heading h2,
.agent-command-panel .panel-heading h2,
.agent-package-panel .panel-heading h2,
.agent-token-list-panel .panel-heading h2 {
    margin: 2px 0 6px;
    color: var(--text-primary);
    font-size: 18px;
    line-height: 1.2;
}

.agent-form-panel .panel-heading p,
.enrollment-created-panel .panel-heading p,
.agent-command-panel .panel-heading p,
.agent-package-panel .panel-heading p,
.agent-token-list-panel .panel-heading p {
    margin: 0;
    color: var(--text-muted);
}

.agent-token-form {
    display: grid;
    gap: 16px;
    padding: 16px 18px 18px;
}

.agent-command-config {
    display: grid;
    gap: 14px;
    padding: 16px 18px 0;
}

.agent-command-config .filter-field input,
.agent-command-config .filter-field select {
    width: 100%;
    min-height: 42px;
    border-radius: 8px;
}

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

.agent-options-grid label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 10px;
    border: 1px solid rgba(38, 42, 61, 0.84);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.28);
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 700;
}

.agent-options-grid input {
    accent-color: var(--soft-purple);
}

.agent-context-alerts {
    display: grid;
    gap: 10px;
    padding: 14px 18px 0;
}

.agent-context-alerts .note-box {
    margin: 0;
}

.agent-package-checklist {
    display: grid;
    gap: 8px;
    margin: 14px 18px 0;
    padding: 0;
    list-style: none;
}

.agent-package-checklist li {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid rgba(38, 42, 61, 0.82);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.24);
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 12px;
}

.agent-package-checklist svg {
    width: 14px;
    height: 14px;
    color: var(--online);
    flex: 0 0 14px;
}

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

.agent-token-form .filter-field input,
.agent-token-form .filter-field textarea {
    width: 100%;
    border-radius: 8px;
}

.agent-token-form .filter-field input {
    min-height: 44px;
}

.filter-field textarea {
    resize: vertical;
    min-height: 92px;
    padding: 12px 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    outline: none;
    background: rgba(6, 7, 13, 0.42);
    color: var(--text-primary);
    font: inherit;
}

.agent-form-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-top: 2px;
}

.agent-form-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid rgba(167, 139, 250, 0.48);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.92), rgba(91, 33, 182, 0.92));
    color: var(--text-primary);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.agent-form-actions button:hover {
    border-color: rgba(192, 132, 252, 0.72);
    box-shadow: 0 0 24px rgba(124, 58, 237, 0.18);
}

.agent-form-actions svg {
    width: 15px;
    height: 15px;
}

.filter-field textarea:focus {
    border-color: rgba(167, 139, 250, 0.58);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.12);
}

.enrollment-created-panel {
    margin-bottom: 18px;
    border-color: rgba(192, 132, 252, 0.34);
    background:
        radial-gradient(circle at 0% 0%, rgba(124, 58, 237, 0.13), transparent 32%),
        var(--card);
}

.created-token-box,
.terminal-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin: 14px 18px 0;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.54);
}

.generated-command-block code,
.created-command-block code {
    white-space: normal;
    overflow-wrap: anywhere;
}

.terminal-block {
    margin-bottom: 18px;
    font-family: var(--font-mono);
    font-size: 13px;
    line-height: 1.55;
    overflow-x: auto;
}

.terminal-block code,
.created-token-box code,
.command-block,
.install-command,
.powershell-command,
.code-block,
.log-output,
.task-output,
.maintenance-output {
    font-family: var(--font-mono);
    font-size: 13px;
    line-height: 1.55;
}

.copy-value-content {
    min-width: 0;
    display: grid;
    gap: 7px;
}

.copy-value-content span {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.copy-value-content code {
    display: block;
    min-width: 0;
    overflow-x: auto;
    padding: 2px 0 4px;
    white-space: nowrap;
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 13px;
    scrollbar-width: thin;
}

.created-token-box .copy-button,
.terminal-block .copy-button {
    white-space: nowrap;
    align-self: center;
}

.copy-button,
.danger-subtle,
.logs-details summary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.32);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.11);
    color: var(--text-secondary);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}

.copy-button:hover,
.logs-details summary:hover {
    border-color: rgba(192, 132, 252, 0.56);
    color: var(--text-primary);
    background: rgba(124, 58, 237, 0.18);
}

.danger-subtle {
    border-color: rgba(239, 68, 68, 0.24);
    background: rgba(239, 68, 68, 0.08);
    color: #fca5a5;
}

.danger-subtle:hover {
    border-color: rgba(239, 68, 68, 0.42);
    background: rgba(239, 68, 68, 0.12);
}

.copy-button svg,
.danger-subtle svg,
.logs-details svg {
    width: 14px;
    height: 14px;
}

.how-to-panel {
    overflow: visible;
}

.how-to-steps {
    display: grid;
    gap: 10px;
    margin: 14px 18px 16px;
}

.how-to-step {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 10px;
    border: 1px solid rgba(38, 42, 61, 0.82);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
}

.how-to-step span {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: rgba(124, 58, 237, 0.16);
    color: var(--soft-purple);
    font-size: 12px;
    font-weight: 800;
}

.how-to-step p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.45;
}

.how-to-step code {
    color: var(--soft-purple);
    font-family: var(--font-mono);
    font-size: 12px;
}

.note-box {
    margin: 0 18px;
    padding: 12px;
    border: 1px solid rgba(245, 158, 11, 0.24);
    border-radius: 8px;
    background: rgba(245, 158, 11, 0.08);
    color: var(--text-secondary);
    font-size: 13px;
}

.agent-settings-list {
    display: grid;
    gap: 12px;
    margin: 16px 18px 18px;
}

.agent-settings-list div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(6, 7, 13, 0.58), rgba(11, 13, 22, 0.58));
}

.agent-settings-list dt {
    color: var(--text-muted);
    font-size: 12px;
}

.agent-settings-list dd {
    margin: 4px 0 0;
    overflow-wrap: anywhere;
    color: var(--soft-purple);
    font-family: var(--font-mono);
    font-size: 12px;
}

.agent-token-table {
    min-width: 1280px;
}

.agent-token-table td strong,
.agent-token-table td small {
    display: block;
}

.agent-token-table td small {
    margin-top: 4px;
    color: var(--text-muted);
}

.agent-row-actions {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.logs-details {
    position: relative;
}

.logs-details summary {
    list-style: none;
}

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

.logs-popover {
    position: absolute;
    right: 0;
    z-index: 7;
    width: min(420px, 78vw);
    margin-top: 8px;
    padding: 12px;
    border: 1px solid var(--border-active);
    border-radius: 8px;
    background: var(--card-hover);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.32);
}

.log-mini-row {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr) auto;
    gap: 8px;
    padding: 8px 0;
    border-bottom: 1px solid rgba(38, 42, 61, 0.82);
}

.log-mini-row:last-child {
    border-bottom: 0;
}

.log-mini-row span,
.log-mini-row em,
.log-mini-row small {
    color: var(--text-muted);
    font-size: 12px;
}

.log-mini-row strong {
    overflow: hidden;
    color: var(--text-primary);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.log-mini-row small {
    grid-column: 2 / -1;
}

.status-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.28);
}

.status-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.24);
}

.copy-feedback {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 20;
    padding: 11px 14px;
    border: 1px solid rgba(34, 197, 94, 0.34);
    border-radius: 8px;
    background: rgba(17, 19, 34, 0.96);
    color: var(--online);
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 180ms ease, transform 180ms ease;
}

.copy-feedback.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1060px) {
    .agent-install-grid,
    .agent-command-layout,
    .agent-install-metrics {
        grid-template-columns: 1fr;
    }

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

    .created-token-box,
    .terminal-block {
        grid-template-columns: 1fr;
    }

    .created-token-box .copy-button,
    .terminal-block .copy-button {
        justify-self: flex-start;
    }
}

@media (max-width: 640px) {
    .agent-options-grid,
    .agent-form-row {
        grid-template-columns: 1fr;
    }
}

.software-metrics {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-bottom: 18px;
}

.software-filter-panel {
    margin-bottom: 18px;
}

.software-filters {
    grid-template-columns: minmax(260px, 1.6fr) repeat(3, minmax(150px, 1fr)) auto;
}

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

.software-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: start;
    padding: 16px;
    border: 1px solid var(--border);
    border-left: 3px solid rgba(167, 139, 250, 0.32);
    border-radius: 8px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.software-card:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.42);
    transform: translateY(-1px);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
}

.software-risk-security {
    border-left-color: var(--glow-purple);
}

.software-risk-warning {
    border-left-color: var(--unknown);
}

.software-risk-ok {
    border-left-color: var(--online);
}

.software-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.13);
    color: var(--soft-purple);
}

.software-icon svg {
    width: 18px;
    height: 18px;
}

.software-main {
    min-width: 0;
}

.software-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.software-title-row h2 {
    margin: 0;
    color: var(--text-primary);
    font-size: 17px;
}

.software-title-row p {
    margin: 5px 0 0;
    color: var(--text-muted);
}

.software-badges {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.software-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.07);
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 700;
}

.category-remote_access,
.risk-security {
    color: var(--glow-purple);
    background: rgba(192, 132, 252, 0.1);
    border-color: rgba(192, 132, 252, 0.22);
}

.category-admin_network,
.risk-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.22);
}

.category-security,
.risk-ok {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.2);
}

.category-browser,
.category-office,
.category-utility,
.category-development,
.risk-info {
    color: var(--info);
    background: rgba(56, 189, 248, 0.08);
    border-color: rgba(56, 189, 248, 0.18);
}

.software-meta-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.software-meta-grid div {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(38, 42, 61, 0.82);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
}

.software-meta-grid span {
    display: block;
    margin-bottom: 5px;
    color: var(--text-muted);
    font-size: 12px;
}

.software-meta-grid strong {
    display: block;
    overflow: hidden;
    color: var(--text-secondary);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.software-examples {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.software-examples a,
.software-examples span {
    color: var(--text-muted);
    font-size: 12px;
}

.software-examples a:hover {
    color: var(--soft-purple);
}

.software-actions {
    display: flex;
    align-items: center;
}

.software-detail-filters {
    grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(160px, 1fr)) auto;
}

.software-detail-table {
    min-width: 980px;
}

.software-policy-metrics {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-bottom: 18px;
}

.policy-header-actions,
.policy-actions,
.policy-counts,
.policy-title-row,
.policy-tabs,
.policy-drawer-actions {
    display: flex;
    align-items: center;
}

.policy-header-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}

.primary-action,
.ghost-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 14px;
    border-radius: 8px;
    font: inherit;
    font-weight: 760;
    cursor: pointer;
    transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease, transform 170ms ease, box-shadow 170ms ease;
}

.primary-action {
    border: 1px solid rgba(var(--module-accent-rgb), 0.5);
    background: linear-gradient(135deg, rgba(var(--module-accent-rgb), 0.78), rgba(124, 58, 237, 0.78));
    color: var(--text-primary);
}

.primary-action:hover,
.ghost-button:hover {
    transform: translateY(-1px);
}

.primary-action:hover {
    box-shadow: 0 0 24px rgba(var(--module-accent-rgb), 0.16);
}

.ghost-button {
    border: 1px solid rgba(167, 139, 250, 0.24);
    background: rgba(11, 13, 22, 0.72);
    color: var(--text-secondary);
}

.software-policy-filter-panel {
    margin-bottom: 18px;
}

.software-policy-filters {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.software-policy-filters .filter-search {
    grid-column: span 2;
}

.software-policy-filters .filter-actions {
    grid-column: span 2;
    justify-content: flex-start;
}

.policy-check-filter {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.34);
    color: var(--text-secondary);
    font-size: 13px;
}

.policy-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 18px;
    align-items: start;
}

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

.policy-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding: 16px;
    border: 1px solid var(--border);
    border-left: 3px solid rgba(var(--module-accent-rgb), 0.62);
    border-radius: 10px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.policy-card:hover {
    background: var(--card-hover);
    border-color: rgba(var(--module-accent-rgb), 0.38);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
    transform: translateY(-1px);
}

.policy-card-main {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
}

.policy-icon {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border: 1px solid currentColor;
    border-radius: 11px;
    color: var(--module-accent);
    background: rgba(var(--module-accent-rgb), 0.1);
}

.policy-icon svg {
    width: 20px;
    height: 20px;
}

.policy-title-row {
    flex-wrap: wrap;
    gap: 8px;
}

.policy-title-row h2 {
    margin: 0;
    color: var(--text-primary);
    font-size: 17px;
}

.policy-card p {
    margin: 8px 0 0;
    color: var(--text-secondary);
    line-height: 1.45;
}

.policy-badge,
.policy-status {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    color: var(--text-secondary);
    background: rgba(148, 163, 184, 0.06);
    font-size: 12px;
    font-weight: 800;
}

.type-prohibited {
    color: var(--critical);
    border-color: rgba(239, 68, 68, 0.22);
    background: rgba(239, 68, 68, 0.09);
}

.type-required {
    color: var(--online);
    border-color: rgba(34, 197, 94, 0.2);
    background: rgba(34, 197, 94, 0.08);
}

.type-restricted {
    color: var(--glow-purple);
    border-color: rgba(192, 132, 252, 0.24);
    background: rgba(192, 132, 252, 0.1);
}

.type-observed {
    color: var(--info);
    border-color: rgba(56, 189, 248, 0.2);
    background: rgba(56, 189, 248, 0.08);
}

.status-active,
.status-open,
.status-permanent {
    color: var(--online);
    border-color: rgba(34, 197, 94, 0.2);
    background: rgba(34, 197, 94, 0.08);
}

.status-monitor_only {
    color: var(--info);
    border-color: rgba(56, 189, 248, 0.2);
    background: rgba(56, 189, 248, 0.08);
}

.status-expired,
.status-inactive,
.status-resolved,
.status-ignored,
.status-exception_applied {
    color: var(--offline);
    border-color: rgba(148, 163, 184, 0.14);
    background: rgba(148, 163, 184, 0.06);
}

.policy-meta-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-top: 13px;
}

.policy-meta-grid span {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(38, 42, 61, 0.82);
    border-radius: 8px;
    color: var(--text-muted);
    background: rgba(6, 7, 13, 0.22);
    font-size: 12px;
}

.policy-meta-grid strong {
    display: block;
    margin-bottom: 4px;
    color: var(--text-secondary);
}

.policy-card-side {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
}

.policy-counts {
    gap: 8px;
    min-width: 220px;
}

.policy-counts span {
    flex: 1;
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text-muted);
    background: rgba(6, 7, 13, 0.24);
    font-size: 12px;
}

.policy-counts strong {
    display: block;
    color: var(--text-primary);
    font-size: 20px;
}

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

.policy-actions form,
.policy-row-action form {
    display: inline-flex;
}

.policy-actions button,
.policy-table-row button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 9px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.74);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
}

.policy-actions button svg {
    width: 14px;
    height: 14px;
}

.policy-actions button:disabled {
    opacity: 0.58;
    cursor: progress;
}

.policy-actions button:hover,
.policy-table-row button:hover {
    border-color: rgba(var(--module-accent-rgb), 0.42);
    color: var(--text-primary);
    background: rgba(var(--module-accent-rgb), 0.1);
}

.policy-card-inactive {
    opacity: 0.68;
}

.policy-card-inactive:hover {
    opacity: 0.84;
}

.policy-side-preview {
    position: sticky;
    top: 88px;
}

.policy-side-section {
    display: grid;
    gap: 9px;
    padding: 0 14px 14px;
}

.policy-side-section h3 {
    margin: 0;
    color: var(--text-primary);
    font-size: 14px;
}

.policy-mini-row {
    display: grid;
    grid-template-columns: 10px minmax(0, 1fr);
    gap: 9px;
    padding: 11px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
    text-align: left;
    cursor: pointer;
}

.policy-mini-row strong,
.policy-mini-row small {
    grid-column: 2;
}

.policy-mini-row strong {
    color: var(--text-primary);
}

.policy-mini-row small {
    color: var(--text-muted);
}

.policy-exception-dot {
    width: 9px;
    height: 9px;
    margin-top: 4px;
    border-radius: 999px;
    background: var(--online);
}

.policy-exception-dot.status-expired {
    background: var(--offline);
}

.policy-empty {
    display: grid;
    justify-items: center;
    gap: 9px;
    padding: 34px 20px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--card);
    color: var(--text-muted);
    text-align: center;
}

.policy-empty svg {
    width: 32px;
    height: 32px;
    color: var(--online);
}

.policy-overlay {
    position: fixed;
    inset: 0;
    z-index: 24;
    background: rgba(3, 4, 8, 0.62);
    backdrop-filter: blur(4px);
}

.policy-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 25;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    width: min(720px, calc(100vw - 28px));
    height: 100vh;
    border-left: 1px solid rgba(var(--module-accent-rgb), 0.28);
    background: #0b0d16;
    box-shadow: -24px 0 70px rgba(0, 0, 0, 0.46);
    transform: translateX(104%);
    transition: transform 190ms ease;
}

.policy-drawer.is-open {
    transform: translateX(0);
}

.policy-drawer-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 22px;
    border-bottom: 1px solid var(--border);
    background:
        radial-gradient(circle at 0 0, rgba(var(--module-accent-rgb), 0.16), transparent 34%),
        #111322;
}

.policy-drawer-header h2 {
    margin: 2px 0 6px;
    color: var(--text-primary);
    font-size: 24px;
}

.policy-drawer-header p {
    margin: 0;
    color: var(--text-muted);
}

.policy-drawer-header button {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.38);
    color: var(--text-secondary);
    cursor: pointer;
}

.policy-form {
    display: grid;
    gap: 16px;
    overflow: auto;
    padding: 18px 22px 22px;
}

.policy-form section {
    display: grid;
    gap: 11px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.24);
}

.policy-form h3 {
    margin: 0;
    color: var(--text-primary);
    font-size: 14px;
}

.policy-form label {
    display: grid;
    gap: 6px;
    color: var(--text-secondary);
    font-size: 12px;
}

.policy-form input,
.policy-form textarea,
.policy-form select {
    width: 100%;
    min-height: 40px;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    outline: 0;
    background: #06070d;
    color: var(--text-primary);
    font: inherit;
}

.policy-form textarea {
    resize: vertical;
}

.policy-form-row,
.exception-builder,
.policy-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.exception-builder {
    grid-template-columns: minmax(120px, 1fr) minmax(150px, 1fr) minmax(120px, 0.8fr) minmax(130px, 0.8fr) auto;
}

.policy-target-scope {
    display: grid;
    gap: 10px;
    padding-top: 4px;
}

.policy-target-scope[hidden] {
    display: none;
}

.policy-target-row {
    grid-template-columns: minmax(180px, 1fr) auto;
}

.policy-target-scope small {
    display: block;
    margin-top: 3px;
    color: var(--text-muted);
    font-size: 12px;
}

.exception-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.exception-builder-list {
    display: grid;
    gap: 9px;
}

.exception-builder {
    align-items: center;
}

.ghost-button.compact {
    min-height: 32px;
    padding: 0 10px;
    font-size: 12px;
}

.icon-danger-button {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(239, 68, 68, 0.24);
    border-radius: 8px;
    background: rgba(239, 68, 68, 0.08);
    color: #fca5a5;
    cursor: pointer;
    transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease, transform 170ms ease;
}

.icon-danger-button:hover {
    border-color: rgba(239, 68, 68, 0.44);
    background: rgba(239, 68, 68, 0.13);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.icon-danger-button:disabled {
    opacity: 0.42;
    cursor: not-allowed;
    transform: none;
}

.icon-danger-button svg {
    width: 16px;
    height: 16px;
}

.policy-segment,
.policy-checkbox-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.policy-segment label,
.policy-checkbox-grid label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(17, 19, 34, 0.7);
}

.policy-drawer-actions {
    justify-content: flex-end;
    gap: 10px;
}

.policy-detail-drawer {
    width: min(840px, calc(100vw - 28px));
}

.policy-tabs {
    gap: 8px;
    padding: 14px 18px 0;
}

.policy-tabs button {
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(6, 7, 13, 0.34);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
}

.policy-tabs button.active {
    border-color: rgba(var(--module-accent-rgb), 0.42);
    color: var(--text-primary);
    background: rgba(var(--module-accent-rgb), 0.14);
}

.policy-tab-panel {
    display: none;
    overflow: auto;
    padding: 18px;
}

.policy-tab-panel.active {
    display: block;
}

.policy-detail-grid div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.28);
}

.policy-detail-grid .wide {
    grid-column: 1 / -1;
}

.policy-detail-grid span {
    display: block;
    margin-bottom: 5px;
    color: var(--text-muted);
    font-size: 12px;
}

.policy-detail-grid strong {
    color: var(--text-secondary);
}

.policy-table-like {
    display: grid;
    gap: 9px;
}

.policy-table-row {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) minmax(180px, 1.4fr) auto auto;
    gap: 10px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.24);
}

.policy-table-row span {
    color: var(--text-secondary);
    font-size: 13px;
}

.policy-table-row small {
    display: block;
    margin-top: 3px;
    color: var(--text-muted);
}

.policy-engine-empty {
    display: grid;
    justify-items: center;
    gap: 9px;
    padding: 28px 18px;
    border: 1px solid rgba(56, 189, 248, 0.18);
    border-radius: 10px;
    background: rgba(56, 189, 248, 0.06);
    color: var(--text-muted);
    text-align: center;
}

.policy-engine-empty svg {
    width: 30px;
    height: 30px;
    color: var(--info);
}

.policy-engine-empty strong {
    color: var(--text-primary);
}

.policy-engine-empty p {
    max-width: 520px;
    margin: 0;
}

.policy-inline-exception-form {
    display: grid;
    grid-template-columns: minmax(160px, 1fr) minmax(180px, 1fr) minmax(120px, 0.75fr) minmax(130px, 0.75fr) auto;
    gap: 10px;
    margin-bottom: 12px;
    padding: 12px;
    border: 1px solid rgba(var(--module-accent-rgb), 0.22);
    border-radius: 10px;
    background: rgba(var(--module-accent-rgb), 0.06);
}

.policy-inline-exception-form input,
.policy-inline-exception-form select {
    min-height: 38px;
    padding: 8px 10px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: #06070d;
    color: var(--text-primary);
    font: inherit;
}

.policy-inline-exception-form button {
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid rgba(var(--module-accent-rgb), 0.38);
    border-radius: 8px;
    background: rgba(var(--module-accent-rgb), 0.14);
    color: var(--text-primary);
    cursor: pointer;
    font: inherit;
}

.policy-timeline {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.policy-timeline li {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr);
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.24);
}

.policy-timeline strong {
    color: var(--text-primary);
}

.policy-timeline p {
    margin: 5px 0 0;
    color: var(--text-muted);
}

.policy-side-preview {
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    scrollbar-width: thin;
}

.policy-detail-drawer {
    grid-template-rows: auto auto minmax(0, 1fr);
}

.policy-detail-drawer .policy-tabs {
    padding: 12px 18px 10px;
    border-bottom: 1px solid rgba(38, 42, 61, 0.72);
    background: rgba(11, 13, 22, 0.96);
}

.policy-detail-drawer .policy-tab-panel {
    min-height: 0;
    padding: 14px 18px 18px;
    overflow-y: auto;
    scrollbar-width: thin;
}

.policy-table-row {
    grid-template-columns: minmax(120px, 0.85fr) minmax(240px, 1.6fr) minmax(130px, 0.9fr) minmax(104px, auto) auto;
    gap: 12px;
}

.policy-row-endpoint,
.policy-row-description,
.policy-row-meta {
    min-width: 0;
}

.policy-row-description strong,
.policy-row-meta {
    overflow: hidden;
    text-overflow: ellipsis;
}

.policy-row-description strong {
    display: block;
    white-space: nowrap;
}

.policy-row-meta {
    color: var(--text-muted);
}

.policy-row-status,
.policy-row-action {
    display: flex;
    justify-content: flex-end;
}

.policy-row-status .severity-badge,
.policy-row-status .policy-status {
    min-width: 92px;
}

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

.policy-checkbox-grid label {
    position: relative;
    min-height: 34px;
    justify-content: flex-start;
    gap: 7px;
    padding: 7px 9px;
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.28);
    color: var(--text-secondary);
    cursor: pointer;
    transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease, transform 170ms ease;
}

.policy-checkbox-grid label:hover {
    border-color: rgba(var(--module-accent-rgb), 0.34);
    background: rgba(var(--module-accent-rgb), 0.08);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.policy-checkbox-grid label:has(input:checked) {
    border-color: rgba(var(--module-accent-rgb), 0.48);
    background: linear-gradient(135deg, rgba(var(--module-accent-rgb), 0.18), rgba(56, 189, 248, 0.06));
    color: var(--text-primary);
}

.policy-checkbox-grid input[type="checkbox"] {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 16px;
    min-width: 16px;
    max-width: 16px;
    height: 16px;
    min-height: 16px;
    max-height: 16px;
    padding: 0;
    margin: 0;
    border: 1px solid rgba(148, 163, 184, 0.36);
    border-radius: 5px;
    appearance: none;
    background: rgba(6, 7, 13, 0.7);
    transition: border-color 170ms ease, background-color 170ms ease, box-shadow 170ms ease;
}

.policy-checkbox-grid input[type="checkbox"]::after {
    content: "";
    width: 7px;
    height: 4px;
    border-left: 2px solid var(--text-primary);
    border-bottom: 2px solid var(--text-primary);
    opacity: 0;
    transform: rotate(-45deg) translate(1px, -1px);
    transform-origin: center;
}

.policy-checkbox-grid input[type="checkbox"]:checked {
    border-color: rgba(var(--module-accent-rgb), 0.72);
    background: var(--module-accent);
    box-shadow: 0 0 18px rgba(var(--module-accent-rgb), 0.18);
}

.policy-checkbox-grid input[type="checkbox"]:checked::after {
    opacity: 1;
}

.policy-checkbox-grid input[type="checkbox"]:focus-visible {
    outline: 2px solid rgba(var(--module-accent-rgb), 0.55);
    outline-offset: 2px;
}

@media (max-width: 1180px) {
    .software-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .software-filters,
    .software-detail-filters,
    .software-policy-filters,
    .software-policy-metrics {
        grid-template-columns: 1fr 1fr;
    }

    .software-card {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .software-actions {
        grid-column: 2;
    }

    .policy-workspace,
    .policy-card {
        grid-template-columns: 1fr;
    }

    .policy-side-preview {
        position: static;
    }

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

@media (max-width: 760px) {
    .software-metrics,
    .software-policy-metrics,
    .software-meta-grid,
    .software-filters,
    .software-detail-filters,
    .software-policy-filters,
    .policy-form-row,
    .exception-builder,
    .policy-detail-grid,
    .policy-table-row,
    .policy-inline-exception-form {
        grid-template-columns: 1fr;
    }

    .exception-section-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .icon-danger-button {
        width: 100%;
    }

    .software-title-row {
        display: grid;
    }

    .software-badges {
        justify-content: flex-start;
    }

    .policy-card-main {
        grid-template-columns: 1fr;
    }

    .software-policy-filters .filter-search,
    .software-policy-filters .filter-actions {
        grid-column: auto;
    }

    .policy-card-side,
    .policy-actions {
        justify-content: flex-start;
    }

    .policy-drawer {
        width: 100vw;
    }
}

* {
    box-sizing: border-box;
}

html {
    color-scheme: dark;
    font-family: var(--font-sans);
    font-synthesis: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    margin: 0;
    min-height: 100vh;
    background: var(--night-black);
    color: var(--text-primary);
    font-family: var(--font-sans);
    font-size: 15px;
    line-height: 1.5;
    --module-accent: var(--owl-purple);
    --module-accent-soft: var(--soft-purple);
    --module-accent-rgb: 124, 58, 237;
}

h1,
h2,
h3,
h4,
.page-title,
.module-title,
.section-title,
.card-title,
.endpoint-title,
.ticket-title,
.desk-ticket-title,
.brand-name {
    font-family: var(--font-display);
    font-weight: 800;
    letter-spacing: -0.03em;
}

p,
label,
input,
textarea,
select,
button,
.nav-item,
.nav-group-label,
.page-subtitle,
.card-subtitle,
.metric-label,
.muted-description,
.panel p,
.desk-ticket-meta,
.desk-ticket-side,
.desk-comment,
.endpoint-table,
.event-row,
.alert-card {
    font-family: var(--font-sans);
}

button,
.desk-btn,
.copy-btn,
.link-btn,
.refresh-button,
.nav-item,
.desk-module-nav a,
.desk-badge,
.status-badge,
.severity-badge,
.software-badge,
.agent-version-pill,
.module-badge {
    font-weight: 700;
    letter-spacing: 0.01em;
}

.metric-value,
.kpi-value,
.stat-value,
.summary-number,
.noc-number,
.ticket-metric-value,
.metric-card strong,
.summary-card strong,
.noc-kpi strong {
    font-family: var(--font-display);
    font-weight: 800;
    letter-spacing: -0.04em;
}

.font-sans {
    font-family: var(--font-sans) !important;
}

.font-display {
    font-family: var(--font-display) !important;
}

.font-mono,
.mono,
.mono-value,
.technical-value,
.command-text,
.log-text,
.token-text,
.path-text,
.terminal-block,
.command-block,
.install-command,
.powershell-command,
.code-block,
.log-output,
.task-output,
.maintenance-output,
.error-trace,
.debug-output,
.token-preview,
.technical-id,
.uuid,
.machine-id,
.snapshot-id,
.path-value,
.url-value,
.api-path,
.file-path,
.version-value,
.ip-value,
.build-value,
.serial-value,
code,
kbd,
pre {
    font-family: var(--font-mono);
}

.mono-value,
.technical-value,
.mono,
.version-value,
.ip-value,
.build-value,
.serial-value,
.token-preview,
.technical-id,
.uuid,
.machine-id,
.snapshot-id,
.path-value,
.url-value,
.api-path,
.file-path {
    font-size: 0.92em;
    letter-spacing: -0.02em;
}

body.page-noc {
    --module-accent: #22c55e;
    --module-accent-soft: #a78bfa;
    --module-accent-rgb: 34, 197, 94;
}

body.page-alerts {
    --module-accent: #f59e0b;
    --module-accent-soft: #ef4444;
    --module-accent-rgb: 245, 158, 11;
}

body.page-events {
    --module-accent: #38bdf8;
    --module-accent-soft: #94a3b8;
    --module-accent-rgb: 56, 189, 248;
}

body.page-endpoints,
body.page-endpoint-detail {
    --module-accent: #38bdf8;
    --module-accent-soft: #7c3aed;
    --module-accent-rgb: 56, 189, 248;
}

body.page-software {
    --module-accent: #a78bfa;
    --module-accent-soft: #38bdf8;
    --module-accent-rgb: 167, 139, 250;
}

body.page-software .software-center {
    display: grid;
    gap: 16px;
}

body.page-software .software-command-header {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
}

body.page-software .software-command-metrics {
    grid-template-columns: repeat(9, minmax(0, 1fr));
}

body.page-software .software-command-metrics .metric-card {
    cursor: pointer;
    min-height: 76px;
    text-align: left;
}

body.page-software .software-module-tabs {
    align-items: center;
    background: rgba(7, 9, 16, 0.78);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding: 5px;
}

body.page-software .software-module-tabs button,
body.page-software .software-view-toggle button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: var(--text-muted);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    gap: 7px;
    min-height: 34px;
    padding: 0 13px;
    white-space: nowrap;
}

body.page-software .software-module-tabs button:hover,
body.page-software .software-module-tabs button.is-active,
body.page-software .software-view-toggle button:hover,
body.page-software .software-view-toggle button.is-active {
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
}

body.page-software .software-module-tabs svg,
body.page-software .software-view-toggle svg {
    height: 15px;
    width: 15px;
}

body.page-software .software-command-panel {
    padding: 14px;
}

body.page-software .software-command-filters {
    grid-template-columns: minmax(300px, 1.5fr) repeat(4, minmax(130px, 1fr)) auto;
}

body.page-software .software-search-field {
    grid-column: span 2;
}

body.page-software .software-view-toggle {
    align-items: center;
    background: rgba(7, 9, 16, 0.78);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: inline-flex;
    gap: 4px;
    padding: 4px;
}

body.page-software .software-tab-panel[hidden] {
    display: none;
}

body.page-software .software-card-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
}

body.page-software .software-operation-card {
    background: rgba(9, 11, 20, 0.82);
    border: 1px solid var(--border);
    border-left-width: 3px;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    padding: 14px;
}

body.page-software .software-operation-card.risk-high,
body.page-software .software-operation-card.risk-critical {
    border-left-color: rgba(239, 68, 68, 0.78);
}

body.page-software .software-operation-card.risk-medium {
    border-left-color: rgba(245, 158, 11, 0.78);
}

body.page-software .software-operation-card header,
body.page-software .software-operation-card footer,
body.page-software .software-card-badges,
body.page-software .software-row-actions,
body.page-software .software-drawer-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-software .software-operation-card header {
    justify-content: space-between;
}

body.page-software .software-operation-card strong,
body.page-software .software-command-table td strong,
body.page-software .software-drawer-grid strong {
    color: #f8fafc;
}

body.page-software .software-operation-card small,
body.page-software .software-drawer-grid span {
    color: #94a3b8;
    display: block;
    font-size: 12px;
    margin-top: 3px;
}

body.page-software .software-operation-card dl,
body.page-software .software-drawer-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
}

body.page-software .software-operation-card dt,
body.page-software .software-drawer-grid span {
    color: #8ea3bd;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-software .software-operation-card dd {
    color: #f8fafc;
    font-weight: 900;
    margin: 3px 0 0;
}

body.page-software .software-operation-card footer button,
body.page-software .software-row-actions button,
body.page-software .software-drawer-actions button {
    align-items: center;
    background: rgba(11, 13, 22, 0.72);
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    color: var(--text-secondary);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    gap: 7px;
    justify-content: center;
    min-height: 32px;
    padding: 0 10px;
}

body.page-software .software-row-actions button {
    min-width: 30px;
    padding: 0;
}

body.page-software .software-operation-card footer button:hover,
body.page-software .software-row-actions button:hover,
body.page-software .software-drawer-actions button:hover {
    border-color: rgba(167, 139, 250, 0.42);
    color: #f8fafc;
}

body.page-software .software-badge {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    justify-content: center;
    min-height: 24px;
    padding: 3px 8px;
    white-space: nowrap;
}

body.page-software .software-badge.risk-high,
body.page-software .software-badge.risk-critical,
body.page-software .software-badge.status-forbidden,
body.page-software .software-badge.status-prohibited,
body.page-software .software-badge.status-failed,
body.page-software .software-badge.status-retired {
    border-color: rgba(239, 68, 68, 0.38);
    color: #fca5a5;
}

body.page-software .software-badge.risk-medium,
body.page-software .software-badge.risk-warning,
body.page-software .software-badge.status-sensitive,
body.page-software .software-badge.status-evaluating,
body.page-software .software-badge.status-testing,
body.page-software .software-badge.status-running,
body.page-software .software-badge.status-queued {
    border-color: rgba(245, 158, 11, 0.36);
    color: #fcd34d;
}

body.page-software .software-badge.risk-low,
body.page-software .software-badge.status-approved,
body.page-software .software-badge.status-required,
body.page-software .software-badge.status-completed {
    border-color: rgba(34, 197, 94, 0.34);
    color: #86efac;
}

body.page-software .software-badge.category-remote,
body.page-software .software-badge.category-security,
body.page-software .software-badge.fileType-MSI,
body.page-software .software-badge.fileType-EXE,
body.page-software .software-badge.fileType-PS1,
body.page-software .software-badge.fileType-ZIP,
body.page-software .software-badge.fileType-MSIX,
body.page-software .software-badge.architecture-x64,
body.page-software .software-badge.architecture-x86,
body.page-software .software-badge.architecture-arm64,
body.page-software .software-badge.architecture-universal {
    border-color: rgba(167, 139, 250, 0.34);
    color: #c4b5fd;
}

body.page-software .software-badge.reboot-yes {
    border-color: rgba(245, 158, 11, 0.36);
    color: #fcd34d;
}

body.page-software .software-badge.reboot-no {
    border-color: rgba(34, 197, 94, 0.28);
    color: #86efac;
}

body.page-software .software-table-panel {
    overflow: hidden;
    padding: 0;
}

body.page-software .software-table-panel .section-heading {
    border-bottom: 1px solid var(--border);
    padding: 16px;
}

body.page-software .software-command-table {
    min-width: 1480px;
}

body.page-software .software-progress {
    background: rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    display: block;
    height: 7px;
    overflow: hidden;
    width: 90px;
}

body.page-software .software-progress i {
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple));
    border-radius: inherit;
    display: block;
    height: 100%;
}

body.page-software .software-drawer pre {
    background: rgba(2, 6, 12, 0.64);
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    color: #e5edf7;
    max-height: 180px;
    overflow: auto;
    padding: 10px;
    white-space: pre-wrap;
}

body.page-software .software-drawer pre.stderr {
    color: #fca5a5;
}

body.page-software .software-muted {
    color: #94a3b8;
    font-size: 12px;
}

body.page-software .software-mini-list {
    display: grid;
    gap: 8px;
}

body.page-software .software-mini-list article {
    background: rgba(2, 6, 12, 0.42);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    display: grid;
    gap: 3px;
    padding: 9px;
}

body.page-software .software-mini-list article span,
body.page-software .software-mini-list article small {
    color: #94a3b8;
    font-size: 12px;
}

body.page-software .software-deployment-wizard {
    display: grid;
    gap: 13px;
}

body.page-software .software-deployment-wizard section {
    background: rgba(2, 6, 12, 0.34);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

body.page-software .software-deployment-wizard h3 {
    color: #f8fafc;
    font-size: 13px;
    margin: 0;
}

body.page-software .software-form-grid,
body.page-software .software-target-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-software .software-deployment-wizard label {
    color: #8ea3bd;
    display: grid;
    font-size: 11px;
    font-weight: 900;
    gap: 5px;
    text-transform: uppercase;
}

body.page-software .software-deployment-wizard input,
body.page-software .software-deployment-wizard select,
body.page-software .software-deployment-wizard textarea {
    background: rgba(11, 13, 22, 0.95);
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    color: #f8fafc;
    min-height: 36px;
    padding: 0 10px;
}

body.page-software .software-deployment-wizard textarea {
    padding: 9px 10px;
}

body.page-software .software-check-row {
    align-items: center;
    background: rgba(15, 23, 42, 0.5);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    display: flex !important;
    flex-direction: row;
    gap: 8px !important;
    padding: 8px;
    text-transform: none !important;
}

body.page-software .software-check-row input {
    min-height: auto;
    padding: 0;
    width: auto;
}

body.page-software .software-check-row strong {
    color: #f8fafc;
    display: block;
    font-size: 12px;
}

body.page-software .software-check-row small {
    color: #94a3b8;
    display: block;
    font-size: 11px;
    margin-top: 2px;
}

body.page-software .software-review-box {
    background: rgba(2, 6, 12, 0.5);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 9px;
    display: grid;
    gap: 6px;
    grid-template-columns: 150px minmax(0, 1fr);
    padding: 10px;
}

body.page-software .software-review-box span {
    color: #8ea3bd;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-software .software-review-box strong {
    color: #f8fafc;
    font-size: 12px;
    overflow-wrap: anywhere;
}

@media (max-width: 1280px) {
    body.page-software .software-command-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.page-software .software-command-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-software .software-search-field {
        grid-column: span 2;
    }
}

@media (max-width: 720px) {
    body.page-software .software-command-header,
    body.page-software .alerts-header-actions {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-software .software-command-metrics,
    body.page-software .software-command-filters,
    body.page-software .software-operation-card dl,
    body.page-software .software-drawer-grid,
    body.page-software .software-form-grid,
    body.page-software .software-target-grid {
        grid-template-columns: 1fr;
    }

    body.page-software .software-search-field {
        grid-column: auto;
    }
}

body.page-software-policies {
    --module-accent: #c084fc;
    --module-accent-soft: #22c55e;
    --module-accent-rgb: 192, 132, 252;
}

body.page-agent-install {
    --module-accent: #22c55e;
    --module-accent-soft: #7c3aed;
    --module-accent-rgb: 34, 197, 94;
}

body.drawer-open {
    overflow: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

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

.sidebar {
    position: sticky;
    top: 0;
    height: 100vh;
    padding: 24px 18px;
    background: var(--sidebar);
    border-right: 1px solid var(--border);
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 6px 24px;
}

.brand-logo {
    position: relative;
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid var(--border-active);
    border-radius: 10px;
    background: radial-gradient(circle at 50% 20%, rgba(192, 132, 252, 0.16), #171a2b 58%);
    color: var(--glow-purple);
    font-weight: 800;
    letter-spacing: 0;
    overflow: hidden;
    box-shadow: 0 0 26px rgba(124, 58, 237, 0.13);
}

.brand-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.brand-logo span {
    display: none;
    place-items: center;
    width: 100%;
    height: 100%;
}

.brand-name {
    font-size: 18px;
    font-weight: 800;
}

.brand-subtitle,
.topbar-kicker,
.metric-label,
.panel p {
    color: var(--text-muted);
}

.brand-subtitle {
    margin-top: 2px;
    font-size: 12px;
}

.nav-menu {
    display: grid;
    gap: 18px;
}

.nav-group {
    display: grid;
    gap: 6px;
}

.nav-group-label {
    padding: 0 10px 2px;
    color: var(--text-disabled);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.nav-item {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 12px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: var(--text-secondary);
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, box-shadow 170ms ease, transform 170ms ease;
}

.nav-item svg,
.topbar-status svg {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}

.nav-item:hover,
.nav-item.active {
    background: var(--card);
    border-color: var(--border-active);
    color: var(--text-primary);
}

.nav-item:hover {
    transform: translateX(1px);
}

.nav-item.active {
    border-color: rgba(var(--module-accent-rgb), 0.36);
    background:
        linear-gradient(90deg, rgba(var(--module-accent-rgb), 0.16), rgba(17, 19, 34, 0.92)),
        var(--card);
    color: var(--text-primary);
    font-weight: 760;
    box-shadow: inset 3px 0 0 var(--module-accent), 0 0 24px rgba(var(--module-accent-rgb), 0.12);
}

.nav-item.active svg {
    color: var(--module-accent);
}

.main-area {
    min-width: 0;
}

.topbar {
    position: sticky;
    top: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 68px;
    padding: 0 32px;
    background: rgba(6, 7, 13, 0.92);
    border-bottom: 1px solid var(--border);
    backdrop-filter: blur(12px);
}

.topbar-kicker {
    display: block;
    margin-bottom: 3px;
    font-size: 12px;
}

.topbar-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--text-secondary);
    font-size: 13px;
}

.pulse-dot,
.alert-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--soft-purple);
}

.content {
    padding: 32px;
}

.breadcrumbs {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 14px;
    color: var(--text-muted);
    font-size: 12px;
}

.breadcrumbs a {
    color: var(--text-secondary);
}

.breadcrumbs a:hover,
.breadcrumbs strong {
    color: var(--text-primary);
}

.breadcrumbs svg {
    width: 13px;
    height: 13px;
    color: var(--text-disabled);
}

.page-header {
    position: relative;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid rgba(var(--module-accent-rgb), 0.2);
    border-top-color: rgba(var(--module-accent-rgb), 0.44);
    border-radius: 12px;
    background:
        radial-gradient(circle at 0% 0%, rgba(var(--module-accent-rgb), 0.16), transparent 32%),
        linear-gradient(135deg, rgba(17, 19, 34, 0.97), rgba(11, 13, 22, 0.96));
    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.14);
}

.page-header::before {
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    top: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--module-accent), var(--module-accent-soft), transparent);
    opacity: 0.85;
}

.page-header-icon,
.command-icon.page-header-icon,
.noc-mark.page-header-icon {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(var(--module-accent-rgb), 0.32);
    border-radius: 10px;
    color: var(--module-accent);
    background: rgba(var(--module-accent-rgb), 0.12);
    box-shadow: 0 0 28px rgba(var(--module-accent-rgb), 0.1);
}

.page-header-icon svg {
    width: 18px;
    height: 18px;
    color: currentColor;
}

.page-title {
    color: var(--text-primary);
    font-size: 26px;
    line-height: 1.08;
    margin: 0;
}

.page-subtitle {
    color: var(--text-secondary);
    font-size: 13px;
    line-height: 1.4;
    margin: 6px 0 0;
}

.page-actions {
    position: relative;
    z-index: 1;
}

.module-badge {
    border-color: rgba(var(--module-accent-rgb), 0.34);
    color: var(--text-primary);
    background: linear-gradient(135deg, rgba(var(--module-accent-rgb), 0.18), rgba(192, 132, 252, 0.06));
}

.hero {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
}

.hero h1 {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    margin: 0;
    font-size: 28px;
    line-height: 1;
}

.hero.page-header {
    align-items: center;
}

.hero.page-header h1 {
    align-items: center;
    font-size: 26px;
}

.hero.page-header h1::after {
    content: none;
}

.hero h1 svg {
    width: 22px;
    height: 22px;
    color: var(--soft-purple);
}

.hero h1::after {
    content: "";
    display: block;
    width: 74px;
    height: 3px;
    margin-top: 14px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple), transparent);
}

.hero p {
    margin: 6px 0 0;
    color: var(--text-secondary);
    font-size: 13px;
}

.hero-chip {
    padding: 8px 12px;
    border: 1px solid rgba(192, 132, 252, 0.34);
    border-radius: 999px;
    color: #ddd6fe;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.2), rgba(192, 132, 252, 0.08));
    font-size: 13px;
    box-shadow: 0 0 24px rgba(124, 58, 237, 0.1);
}

.metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.dashboard-metrics {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.metric-card,
.panel {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 8px;
    min-width: 0;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metric-card:hover,
.panel:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.48);
    box-shadow: 0 0 0 1px rgba(124, 58, 237, 0.06), 0 12px 36px rgba(0, 0, 0, 0.16);
    transform: translateY(-1px);
}

.metric-card {
    display: grid;
    align-content: center;
    gap: 8px;
    min-height: 80px;
    padding: 14px 16px;
}

.metric-label {
    display: block;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.25;
}

.metric-value {
    font-size: 28px;
    line-height: 1;
}

.status-text-online {
    color: var(--online);
}

.status-text-offline {
    color: var(--offline);
}

.status-text-unknown {
    color: var(--unknown);
}

.status-text-muted {
    color: var(--text-disabled);
}

.status-text-security {
    color: var(--glow-purple);
}

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

.panel {
    min-width: 0;
    overflow: hidden;
}

.panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px 12px;
}

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

.panel p {
    margin: 5px 0 0;
    font-size: 13px;
}

.panel > .mini-list,
.panel > .maintenance-summary,
.panel > .maintenance-task-list,
.panel > .empty-alert-state,
.panel > .empty-muted {
    margin-left: 16px;
    margin-right: 16px;
}

.panel > .mini-list,
.panel > .maintenance-task-list,
.panel > .empty-alert-state,
.panel > .empty-muted {
    margin-bottom: 16px;
}

.table-wrap {
    overflow-x: auto;
}

.endpoint-table {
    width: 100%;
    min-width: 860px;
    border-collapse: collapse;
}

.endpoint-table th,
.endpoint-table td {
    padding: 13px 18px;
    border-top: 1px solid var(--border);
    text-align: left;
    white-space: nowrap;
}

.endpoint-table th {
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 700;
}

.endpoint-table td {
    color: var(--text-secondary);
    transition: background-color 170ms ease, color 170ms ease;
}

.endpoint-table tr:hover td {
    background: rgba(23, 26, 43, 0.44);
}

.mono {
    font-family: var(--font-mono);
}

.strong {
    color: var(--text-primary);
    font-weight: 700;
}

.status-badge {
    display: inline-flex;
    align-items: center;
    min-width: 78px;
    justify-content: center;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease;
}

.status-online {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.18);
}

.status-offline {
    color: var(--offline);
    background: rgba(148, 163, 184, 0.07);
    border-color: rgba(148, 163, 184, 0.14);
}

.status-unknown {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

.empty-state {
    color: var(--text-muted);
    text-align: center;
}

.alerts-panel {
    align-self: start;
}

.alert-placeholder {
    display: flex;
    gap: 12px;
    margin: 0 18px 18px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(192, 132, 252, 0.08);
}

.alert-placeholder strong {
    display: block;
    font-size: 14px;
}

.panel-link {
    display: inline-flex;
    margin: 0 18px 18px;
    color: var(--soft-purple);
    font-size: 13px;
    font-weight: 700;
}

.panel-link.inline {
    margin: 0;
}

.mini-alert-list,
.endpoint-alert-list {
    display: grid;
    gap: 10px;
    padding: 0 18px 18px;
}

.mini-alert,
.endpoint-alert-item {
    display: grid;
    gap: 7px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
    transition: border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.mini-alert:hover,
.endpoint-alert-item:hover {
    border-color: rgba(167, 139, 250, 0.38);
    background: rgba(23, 26, 43, 0.42);
    transform: translateY(-1px);
}

.mini-alert strong,
.endpoint-alert-item strong {
    color: var(--text-primary);
    font-size: 14px;
}

.mini-alert small,
.endpoint-alert-item small,
.endpoint-alert-item p {
    color: var(--text-muted);
}

.endpoint-alert-item {
    grid-template-columns: auto 1fr;
    align-items: start;
}

.endpoint-alert-item p {
    margin: 5px 0;
}

.positive-empty {
    padding: 16px;
    border: 1px solid rgba(34, 197, 94, 0.18);
    border-radius: 8px;
    background: rgba(34, 197, 94, 0.07);
    color: var(--text-secondary);
}

.severity-badge,
.alert-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-width: 72px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
}

.severity-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.11);
    border-color: rgba(239, 68, 68, 0.22);
}

.severity-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

.severity-security {
    color: var(--glow-purple);
    background: rgba(192, 132, 252, 0.1);
    border-color: rgba(192, 132, 252, 0.22);
}

.severity-info {
    color: var(--info);
    background: rgba(56, 189, 248, 0.1);
    border-color: rgba(56, 189, 248, 0.22);
}

.severity-running {
    color: var(--soft-purple);
    background: rgba(124, 58, 237, 0.12);
    border-color: rgba(167, 139, 250, 0.24);
}

.severity-partial,
.severity-skipped {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.11);
    border-color: rgba(245, 158, 11, 0.22);
}

.severity-failed {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.11);
    border-color: rgba(239, 68, 68, 0.22);
}

.maintenance-grid {
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr);
}

.maintenance-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.maintenance-summary div,
.mini-list-item {
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.48);
}

.maintenance-summary span,
.mini-list-item small {
    display: block;
    color: var(--text-muted);
    font-size: 12px;
}

.maintenance-summary strong {
    display: block;
    margin-top: 4px;
    color: var(--text-primary);
}

.maintenance-task-list {
    display: grid;
    gap: 10px;
}

.maintenance-task {
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.42);
    overflow: hidden;
}

.maintenance-task summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 12px;
    cursor: pointer;
}

.maintenance-task pre {
    max-height: 240px;
    margin: 0;
    padding: 12px;
    overflow: auto;
    border-top: 1px solid var(--border);
    color: var(--text-secondary);
    background: rgba(6, 7, 13, 0.82);
    font-size: 12px;
    white-space: pre-wrap;
}

.maintenance-task pre.is-error {
    color: #fecaca;
}

.mini-list {
    display: grid;
    gap: 10px;
}

.mini-list-item {
    display: grid;
    gap: 6px;
}

.empty-muted,
.empty-cell {
    color: var(--text-muted);
}

.alert-status-open {
    color: var(--text-primary);
    background: rgba(124, 58, 237, 0.14);
    border-color: rgba(167, 139, 250, 0.26);
}

.alert-status-acknowledged {
    color: var(--info);
    background: rgba(56, 189, 248, 0.09);
    border-color: rgba(56, 189, 248, 0.18);
}

.alert-status-resolved {
    color: var(--offline);
    background: rgba(148, 163, 184, 0.07);
    border-color: rgba(148, 163, 184, 0.14);
}

.alert-status-muted {
    gap: 6px;
    color: var(--soft-purple);
    background: rgba(124, 58, 237, 0.09);
    border-color: rgba(192, 132, 252, 0.2);
}

.alert-status-temporary {
    gap: 6px;
    color: var(--info);
    background: rgba(56, 189, 248, 0.08);
    border-color: rgba(56, 189, 248, 0.2);
}

.alert-status-temporary svg {
    width: 13px;
    height: 13px;
}

.alert-status-muted svg {
    width: 13px;
    height: 13px;
}

.alerts-metrics,
.alerts-filters {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.alerts-table {
    min-width: 1120px;
}

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

.alert-actions a,
.alert-actions button {
    min-height: 30px;
    padding: 0 9px;
    border: 1px solid rgba(167, 139, 250, 0.24);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.09);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    transition: color 170ms ease, border-color 170ms ease, transform 170ms ease;
}

.alert-actions a:hover,
.alert-actions button:hover {
    border-color: rgba(192, 132, 252, 0.48);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.table-link {
    color: var(--text-primary);
    transition: color 170ms ease;
}

.table-link:hover {
    color: var(--soft-purple);
}

.detail-hero {
    margin-bottom: 22px;
}

.endpoint-hero-card {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background:
        radial-gradient(circle at 12% 0%, rgba(124, 58, 237, 0.18), transparent 30%),
        var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.endpoint-hero-card:hover {
    border-color: rgba(167, 139, 250, 0.42);
    transform: translateY(-1px);
}

.endpoint-hero-main {
    min-width: 0;
}

.endpoint-hero-meta,
.smart-badges,
.endpoint-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.endpoint-hero-meta {
    margin-top: 16px;
    color: var(--text-secondary);
    font-size: 13px;
}

.endpoint-hero-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 9px;
    border: 1px solid rgba(38, 42, 61, 0.88);
    border-radius: 999px;
    background: rgba(11, 13, 22, 0.72);
}

.smart-badges {
    margin-top: 14px;
}

.smart-badge {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
}

.badge-security,
.badge-admin {
    color: var(--glow-purple);
    background: rgba(192, 132, 252, 0.1);
    border-color: rgba(192, 132, 252, 0.24);
}

.endpoint-hero-actions {
    justify-content: flex-end;
    min-width: 250px;
}

.copy-btn,
.mini-copy {
    border: 1px solid rgba(167, 139, 250, 0.28);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.1);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.copy-btn {
    min-height: 36px;
    padding: 0 11px;
    font-size: 13px;
}

.link-btn {
    display: inline-flex;
    align-items: center;
}

.copy-btn:hover,
.mini-copy:hover,
.copy-btn.copied,
.mini-copy.copied {
    border-color: rgba(192, 132, 252, 0.56);
    color: var(--text-primary);
    background: rgba(124, 58, 237, 0.18);
    transform: translateY(-1px);
}

.copy-failed {
    border-color: rgba(239, 68, 68, 0.4);
}

.back-link {
    display: inline-flex;
    margin-bottom: 18px;
    color: var(--text-muted);
    font-size: 13px;
    transition: color 170ms ease;
}

.back-link:hover {
    color: var(--soft-purple);
}

.detail-title-row {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.detail-title-row h1 {
    position: relative;
    margin: 0;
    font-size: 26px;
    line-height: 1.05;
}

.detail-title-row h1::after {
    content: "";
    display: block;
    width: 56px;
    height: 2px;
    margin-top: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple), transparent);
}

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

.endpoint-overview-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.25fr 1fr;
    gap: 18px;
    margin-bottom: 18px;
}

.endpoint-health-card,
.technical-summary-card,
.activity-card {
    min-width: 0;
}

.section-icon {
    display: inline-grid;
    place-items: center;
    width: 24px;
    height: 24px;
    margin-right: 8px;
    border: 1px solid rgba(167, 139, 250, 0.28);
    border-radius: 7px;
    color: var(--soft-purple);
    background: rgba(124, 58, 237, 0.1);
    font-size: 13px;
    vertical-align: -5px;
}

.section-icon svg {
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.health-score-row {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 0 18px;
}

.health-score-row strong {
    color: var(--text-primary);
    font-size: 48px;
    line-height: 1;
}

.health-score-row span {
    color: var(--text-muted);
}

.health-score-row em {
    margin-left: auto;
    font-style: normal;
    font-weight: 800;
}

.health-bar {
    height: 10px;
    margin: 18px;
    overflow: hidden;
    border-radius: 999px;
    background: #0b0d16;
}

.health-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
}

.health-good {
    color: var(--online);
    background: linear-gradient(90deg, #16a34a, var(--online));
}

.health-warning {
    color: var(--unknown);
    background: linear-gradient(90deg, #d97706, var(--unknown));
}

.health-critical {
    color: var(--critical);
    background: linear-gradient(90deg, #b91c1c, var(--critical));
}

.health-score-row em.health-good,
.health-score-row em.health-warning,
.health-score-row em.health-critical {
    background: none;
}

.health-unknown,
.health-insufficient {
    color: var(--text-muted);
}

.health-insufficient {
    padding: 0 18px 22px;
    font-weight: 700;
}

.technical-list {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0 18px 18px;
}

.technical-list div {
    min-width: 0;
}

.technical-list dt {
    margin-bottom: 5px;
    color: var(--text-muted);
    font-size: 12px;
}

.technical-list dd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
    color: var(--text-secondary);
}

.technical-list dd > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mini-copy {
    min-height: 28px;
    padding: 0 8px;
    font-size: 12px;
}

.timeline {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0 18px 18px;
    list-style: none;
}

.timeline li {
    display: grid;
    grid-template-columns: 18px 1fr;
    gap: 10px;
}

.timeline li > span {
    width: 10px;
    height: 10px;
    margin-top: 5px;
    border-radius: 999px;
    background: var(--soft-purple);
    box-shadow: 0 0 16px rgba(192, 132, 252, 0.28);
}

.timeline strong {
    display: block;
    color: var(--text-primary);
    font-size: 13px;
}

.timeline p {
    margin-top: 3px;
}

.detail-hero p {
    margin: 14px 0 0;
    color: var(--text-secondary);
}

.detail-summary-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.summary-card {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.summary-card:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.42);
    transform: translateY(-1px);
}

.summary-card span {
    display: block;
    margin-bottom: 9px;
    color: var(--text-muted);
    font-size: 12px;
}

.summary-card strong {
    display: block;
    overflow: hidden;
    color: var(--text-primary);
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.detail-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 18px;
}

.detail-card {
    min-height: 100%;
}

.detail-list {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0 18px 18px;
}

.detail-list.compact {
    gap: 9px;
    padding-top: 14px;
}

.detail-list div {
    min-width: 0;
}

.detail-list dt {
    margin-bottom: 4px;
    color: var(--text-muted);
    font-size: 12px;
}

.detail-list dd {
    margin: 0;
    color: var(--text-secondary);
    overflow-wrap: anywhere;
}

.security-state {
    margin: 0 18px;
    padding: 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(148, 163, 184, 0.06);
}

.security-facts:empty {
    display: none;
}

.security-state span {
    display: inline-flex;
    align-items: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
}

.security-state p {
    margin: 10px 0 0;
}

.security-good span {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
}

.security-warning span {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
}

.security-critical span {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
}

.uptime-value {
    padding: 0 18px 22px;
    color: var(--soft-purple);
    font-size: 32px;
    font-weight: 800;
}

.disks-panel,
.software-panel {
    margin-bottom: 18px;
}

.disk-list {
    display: grid;
    gap: 12px;
    padding: 0 18px 18px;
}

.disk-row {
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.26);
}

.disk-row-header,
.disk-meta {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}

.disk-row-header span,
.disk-meta {
    color: var(--text-muted);
    font-size: 13px;
}

.disk-meta {
    margin-top: 8px;
}

.disk-bar {
    height: 8px;
    margin-top: 12px;
    overflow: hidden;
    border-radius: 999px;
    background: #0b0d16;
}

.disk-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--soft-purple);
}

.disk-normal {
    background: linear-gradient(90deg, var(--owl-purple), var(--soft-purple));
}

.disk-warning {
    background: var(--unknown);
}

.disk-critical {
    background: var(--critical);
}

.padded {
    padding: 0 18px 18px;
}

.software-search {
    display: grid;
    gap: 6px;
    min-width: min(320px, 100%);
    color: var(--text-muted);
    font-size: 12px;
}

.software-search input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    outline: 0;
    background: #0b0d16;
    color: var(--text-primary);
    font: inherit;
    transition: border-color 170ms ease, box-shadow 170ms ease;
}

.software-search input:focus {
    border-color: rgba(167, 139, 250, 0.58);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.12);
}

.software-header {
    align-items: end;
}

.software-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 18px 14px;
}

.software-chip {
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(11, 13, 22, 0.76);
    color: var(--text-muted);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.software-chip:hover,
.software-chip.active {
    border-color: rgba(192, 132, 252, 0.42);
    color: var(--text-primary);
    background: rgba(124, 58, 237, 0.16);
    transform: translateY(-1px);
}

.software-table-wrap {
    max-height: 430px;
    overflow: auto;
}

.software-table {
    min-width: 680px;
}

.endpoint-metrics {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.status-text-critical {
    color: var(--critical);
}

.filter-panel {
    margin-bottom: 18px;
}

.endpoint-filters {
    display: grid;
    grid-template-columns: minmax(240px, 1.4fr) repeat(5, minmax(150px, 1fr)) auto;
    gap: 12px;
    align-items: end;
    padding: 18px;
}

.filter-field {
    display: grid;
    gap: 7px;
    min-width: 0;
    color: var(--text-muted);
    font-size: 12px;
}

.filter-field input,
.filter-field select {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    outline: 0;
    background: #0b0d16;
    color: var(--text-primary);
    font: inherit;
    transition: border-color 170ms ease, box-shadow 170ms ease, background-color 170ms ease;
}

.filter-field input:focus,
.filter-field select:focus {
    border-color: rgba(167, 139, 250, 0.58);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.12);
}

.filter-actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
}

.filter-actions button,
.filter-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 14px;
    border-radius: 8px;
    font: inherit;
}

.filter-actions button {
    border: 1px solid rgba(167, 139, 250, 0.48);
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.86), rgba(91, 33, 182, 0.86));
    color: var(--text-primary);
    cursor: pointer;
    transition: transform 170ms ease, border-color 170ms ease, box-shadow 170ms ease;
}

.filter-actions button:hover {
    border-color: rgba(192, 132, 252, 0.72);
    box-shadow: 0 0 24px rgba(124, 58, 237, 0.18);
    transform: translateY(-1px);
}

.filter-actions a {
    color: var(--text-muted);
    transition: color 170ms ease;
}

.filter-actions a:hover {
    color: var(--soft-purple);
}

.endpoints-list-panel {
    margin-bottom: 18px;
}

.endpoint-list-table {
    min-width: 1180px;
}

.endpoint-name {
    display: inline-block;
    margin-bottom: 4px;
    font-weight: 800;
}

.endpoint-subtext {
    display: block;
    color: var(--text-muted);
    font-size: 12px;
}

.disk-pill,
.defender-pill {
    display: inline-flex;
    align-items: center;
    max-width: 260px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    overflow: hidden;
    font-size: 12px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.disk-pill-normal {
    color: var(--soft-purple);
    background: rgba(124, 58, 237, 0.1);
    border-color: rgba(167, 139, 250, 0.2);
}

.disk-pill-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

.disk-pill-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.24);
}

.defender-ok {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.18);
}

.defender-attention {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.24);
}

.defender-unknown {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.07);
    border-color: rgba(148, 163, 184, 0.14);
}

.agent-version-pill {
    display: inline-flex;
    align-items: center;
    max-width: 220px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    overflow: hidden;
    font-size: 12px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.agent-current {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.18);
}

.agent-outdated {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

.agent-unknown {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.07);
    border-color: rgba(148, 163, 184, 0.14);
}

.agent-card {
    margin-bottom: 18px;
}

.agent-detail-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
    padding: 0 18px 18px;
}

.agent-detail-grid div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
}

.agent-detail-grid dt {
    margin-bottom: 6px;
    color: var(--text-muted);
    font-size: 12px;
}

.agent-detail-grid dd {
    margin: 0;
    overflow: hidden;
    color: var(--text-secondary);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.endpoint-empty {
    padding: 36px 18px;
}

body.page-endpoints .endpoint-ops-hero {
    align-items: center;
}

body.page-endpoints .endpoint-ops-hero-actions,
body.page-endpoints .endpoint-ops-list-header,
body.page-endpoints .endpoint-view-toggle,
body.page-endpoints .endpoint-bulk-bar,
body.page-endpoints .endpoint-row-actions,
body.page-endpoints .endpoint-quick-filters,
body.page-endpoints .endpoint-card-item header,
body.page-endpoints .endpoint-card-item footer,
body.page-endpoints .endpoint-card-tags {
    display: flex;
    align-items: center;
}

body.page-endpoints .endpoint-ops-hero-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

body.page-endpoints .endpoint-ops-metrics {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

body.page-endpoints .endpoint-metric-card {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

body.page-endpoints .endpoint-metric-card .metric-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

body.page-endpoints .endpoint-metric-card .metric-label svg {
    width: 15px;
    height: 15px;
}

body.page-endpoints .endpoint-metric-card small {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 600;
}

body.page-endpoints .endpoint-metric-card:hover,
body.page-endpoints .endpoint-metric-card.is-active {
    border-color: rgba(167, 139, 250, 0.42);
    background:
        radial-gradient(circle at 16% 0%, rgba(124, 58, 237, 0.16), transparent 34%),
        rgba(17, 19, 34, 0.96);
    transform: translateY(-1px);
}

body.page-endpoints .endpoint-ops-filter-panel {
    overflow: visible;
}

body.page-endpoints .endpoint-ops-filters {
    grid-template-columns: minmax(280px, 1.6fr) repeat(4, minmax(140px, 1fr));
    align-items: end;
    padding-bottom: 12px;
}

body.page-endpoints .endpoint-search-field {
    grid-column: span 2;
}

body.page-endpoints .endpoint-attention-check label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: #0b0d16;
    color: var(--text-secondary);
    font-weight: 700;
}

body.page-endpoints .endpoint-attention-check input {
    width: 14px;
    min-height: auto;
}

body.page-endpoints .endpoint-filter-actions button {
    gap: 7px;
}

body.page-endpoints .endpoint-filter-actions svg {
    width: 15px;
    height: 15px;
}

body.page-endpoints .endpoint-quick-filters {
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 18px 18px;
}

body.page-endpoints .endpoint-quick-filters a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 11px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    background: rgba(11, 13, 22, 0.72);
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: border-color 160ms ease, color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

body.page-endpoints .endpoint-quick-filters a:hover,
body.page-endpoints .endpoint-quick-filters a.is-active {
    border-color: rgba(167, 139, 250, 0.42);
    background: rgba(124, 58, 237, 0.16);
    color: var(--text-primary);
    transform: translateY(-1px);
}

body.page-endpoints .endpoint-ops-panel {
    overflow: visible;
}

body.page-endpoints .endpoint-ops-list-header {
    justify-content: space-between;
    gap: 14px;
}

body.page-endpoints .endpoint-ops-list-header h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

body.page-endpoints .endpoint-ops-list-header h2 svg {
    width: 18px;
    height: 18px;
    color: var(--soft-purple);
}

body.page-endpoints .endpoint-view-toggle {
    gap: 6px;
    padding: 4px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(7, 9, 16, 0.78);
}

body.page-endpoints .endpoint-view-toggle button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--text-muted);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

body.page-endpoints .endpoint-view-toggle button:hover,
body.page-endpoints .endpoint-view-toggle button.is-active {
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
}

body.page-endpoints .endpoint-view-toggle svg,
body.page-endpoints .endpoint-row-actions svg,
body.page-endpoints .endpoint-bulk-bar svg {
    width: 15px;
    height: 15px;
}

body.page-endpoints .endpoint-bulk-bar {
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 18px 14px;
    padding: 10px;
    border: 1px solid rgba(167, 139, 250, 0.24);
    border-radius: 10px;
    background: rgba(124, 58, 237, 0.1);
}

body.page-endpoints .endpoint-bulk-bar strong {
    margin-right: 8px;
    color: var(--text-primary);
}

body.page-endpoints .endpoint-bulk-bar button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.72);
    color: var(--text-secondary);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

body.page-endpoints .endpoint-bulk-bar button:hover {
    border-color: rgba(167, 139, 250, 0.36);
    color: var(--text-primary);
}

body.page-endpoints .endpoint-ops-table-wrap {
    max-height: 68vh;
    overflow: auto;
}

body.page-endpoints .endpoint-ops-table {
    min-width: 1540px;
}

body.page-endpoints .endpoint-ops-table th,
body.page-endpoints .endpoint-ops-table td {
    padding-top: 10px;
    padding-bottom: 10px;
    vertical-align: middle;
}

body.page-endpoints .endpoint-ops-table tr[data-endpoint-row] {
    cursor: pointer;
}

body.page-endpoints .endpoint-ops-table tr[data-endpoint-row]:hover td,
body.page-endpoints .endpoint-ops-table tr[data-endpoint-row].is-selected td {
    background: rgba(124, 58, 237, 0.09);
}

body.page-endpoints .select-col {
    width: 42px;
    text-align: center;
}

body.page-endpoints .endpoint-main-value {
    display: block;
    color: var(--text-primary);
    font-size: 13px;
}

body.page-endpoints .endpoint-type-chip,
body.page-endpoints .endpoint-health-pill,
body.page-endpoints .endpoint-attention-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

body.page-endpoints .endpoint-type-server {
    color: #c4b5fd;
    background: rgba(124, 58, 237, 0.14);
    border-color: rgba(167, 139, 250, 0.24);
}

body.page-endpoints .endpoint-type-workstation {
    color: #93c5fd;
    background: rgba(59, 130, 246, 0.12);
    border-color: rgba(59, 130, 246, 0.22);
}

body.page-endpoints .endpoint-type-notebook {
    color: #86efac;
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.2);
}

body.page-endpoints .endpoint-health-pill {
    min-width: 42px;
}

body.page-endpoints .endpoint-health-pill.health-good,
body.page-endpoints .endpoint-health-tile.health-good {
    color: var(--online);
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
}

body.page-endpoints .endpoint-health-pill.health-warning,
body.page-endpoints .endpoint-health-tile.health-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.28);
}

body.page-endpoints .endpoint-health-pill.health-critical,
body.page-endpoints .endpoint-health-tile.health-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.28);
}

body.page-endpoints .endpoint-health-pill.health-unknown,
body.page-endpoints .endpoint-health-tile.health-unknown {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.08);
    border-color: rgba(148, 163, 184, 0.16);
}

body.page-endpoints .endpoint-attention-pill.attention-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.24);
}

body.page-endpoints .endpoint-attention-pill.attention-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

body.page-endpoints .endpoint-attention-pill.attention-muted {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.08);
    border-color: rgba(148, 163, 184, 0.14);
}

body.page-endpoints .endpoint-attention-pill.attention-normal {
    color: var(--online);
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.16);
}

body.page-endpoints .endpoint-row-actions {
    position: relative;
    gap: 6px;
}

body.page-endpoints .endpoint-row-actions a,
body.page-endpoints .endpoint-row-actions button {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.68);
    color: var(--text-secondary);
    cursor: pointer;
}

body.page-endpoints .endpoint-row-actions a:hover,
body.page-endpoints .endpoint-row-actions button:hover {
    border-color: rgba(167, 139, 250, 0.36);
    color: var(--text-primary);
}

body.page-endpoints .endpoint-action-menu {
    position: relative;
}

body.page-endpoints .endpoint-action-popover {
    position: absolute;
    z-index: 20;
    top: calc(100% + 8px);
    right: 0;
    display: grid;
    min-width: 210px;
    padding: 8px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: #0b0d16;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.38);
}

body.page-endpoints .endpoint-action-popover[hidden] {
    display: none;
}

body.page-endpoints .endpoint-action-popover a,
body.page-endpoints .endpoint-action-popover button {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    height: 34px;
    padding: 0 9px;
    border: 0;
    background: transparent;
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
}

body.page-endpoints .endpoint-action-popover a:hover,
body.page-endpoints .endpoint-action-popover button:hover {
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-primary);
}

body.page-endpoints .endpoint-card-grid {
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    gap: 12px;
    padding: 0 18px 18px;
}

body.page-endpoints .endpoint-card-grid.is-active {
    display: grid;
}

body.page-endpoints .endpoint-card-item {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: rgba(9, 11, 20, 0.78);
}

body.page-endpoints .endpoint-card-item.attention-critical {
    border-color: rgba(239, 68, 68, 0.34);
}

body.page-endpoints .endpoint-card-item.attention-warning {
    border-color: rgba(245, 158, 11, 0.3);
}

body.page-endpoints .endpoint-card-item:hover {
    transform: translateY(-1px);
    border-color: rgba(167, 139, 250, 0.28);
}

body.page-endpoints .endpoint-card-item header,
body.page-endpoints .endpoint-card-item footer {
    justify-content: space-between;
    gap: 8px;
}

body.page-endpoints .endpoint-card-item h3,
body.page-endpoints .endpoint-card-item p {
    margin: 0;
}

body.page-endpoints .endpoint-card-item h3 {
    color: var(--text-primary);
    font-size: 16px;
}

body.page-endpoints .endpoint-card-item p {
    color: var(--text-secondary);
    font-size: 12px;
}

body.page-endpoints .endpoint-card-tags {
    flex-wrap: wrap;
    gap: 6px;
}

body.page-endpoints .endpoint-card-tags span {
    padding: 5px 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 800;
}

body.page-endpoints .endpoint-card-item footer a {
    color: var(--soft-purple);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

body.page-endpoints .endpoint-health-map {
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
    gap: 10px;
    padding: 0 18px 18px;
}

body.page-endpoints .endpoint-health-map.is-active {
    display: grid;
}

body.page-endpoints .endpoint-health-tile {
    display: grid;
    gap: 7px;
    min-height: 116px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 10px;
    text-decoration: none;
}

body.page-endpoints .endpoint-health-tile strong {
    color: var(--text-primary);
    font-size: 12px;
}

body.page-endpoints .endpoint-health-tile span {
    color: inherit;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -0.04em;
}

body.page-endpoints .endpoint-health-tile small {
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 700;
}

body.page-endpoints .endpoint-action-toast {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 80;
}

@media (max-width: 1280px) {
    body.page-endpoints .endpoint-ops-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.page-endpoints .endpoint-ops-filters {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.page-endpoints .endpoint-search-field {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    body.page-endpoints .endpoint-ops-metrics,
    body.page-endpoints .endpoint-ops-filters,
    body.page-endpoints .endpoint-card-grid,
    body.page-endpoints .endpoint-health-map {
        grid-template-columns: 1fr;
    }

    body.page-endpoints .endpoint-ops-list-header,
    body.page-endpoints .endpoint-ops-hero-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    body.page-endpoints .endpoint-view-toggle {
        width: 100%;
        overflow-x: auto;
        justify-content: flex-start;
    }

    body.page-endpoints .endpoint-bulk-bar {
        align-items: flex-start;
        flex-direction: column;
    }
}

.alerts-command-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background:
        radial-gradient(circle at 8% 0%, rgba(124, 58, 237, 0.18), transparent 32%),
        linear-gradient(135deg, rgba(17, 19, 34, 0.98), rgba(11, 13, 22, 0.98));
}

.alerts-command-title,
.alerts-header-actions,
.auto-refresh-chip,
.refresh-button,
.alert-operation-topline,
.alert-operation-meta,
.side-list-item,
.affected-row {
    display: flex;
    align-items: center;
}

.alerts-command-title {
    gap: 12px;
    min-width: 0;
}

.command-icon {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(192, 132, 252, 0.28);
    border-radius: 10px;
    color: var(--glow-purple);
    background: rgba(124, 58, 237, 0.12);
    box-shadow: 0 0 28px rgba(124, 58, 237, 0.12);
}

.command-icon svg {
    width: 18px;
    height: 18px;
}

.alerts-command-title h1 {
    margin: 0;
    font-size: 26px;
    line-height: 1;
}

.alerts-command-title h1::after {
    content: "";
    display: block;
    width: 56px;
    height: 2px;
    margin-top: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple), transparent);
}

.alerts-command-title p {
    margin: 6px 0 0;
    color: var(--text-secondary);
    font-size: 13px;
}

.alerts-header-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}

.refresh-meta,
.auto-refresh-chip,
.relative-chip {
    color: var(--text-muted);
    font-size: 12px;
}

.auto-refresh-chip,
.relative-chip {
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 999px;
    background: rgba(11, 13, 22, 0.72);
}

.auto-refresh-chip svg {
    width: 14px;
    height: 14px;
    color: var(--soft-purple);
}

.refresh-button {
    gap: 8px;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(167, 139, 250, 0.34);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 13px;
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.refresh-button svg,
.filter-actions svg {
    width: 15px;
    height: 15px;
}

.refresh-button:hover {
    border-color: rgba(192, 132, 252, 0.54);
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.alerts-command-metrics {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.command-metric {
    display: grid;
    align-content: center;
    gap: 8px;
    min-height: 80px;
    padding-right: 58px;
    position: relative;
    overflow: hidden;
}

.command-metric .metric-icon {
    position: absolute;
    top: 12px;
    right: 12px;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 10px;
    color: var(--soft-purple);
    background: rgba(124, 58, 237, 0.09);
}

.command-metric .metric-icon svg {
    width: 15px;
    height: 15px;
}

.command-metric .metric-icon.critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.08);
}

.command-metric .metric-icon.warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.09);
}

.command-metric .metric-icon.security {
    color: var(--glow-purple);
    background: rgba(192, 132, 252, 0.1);
}

.command-filter-panel {
    margin-bottom: 18px;
}

.alerts-command-filters {
    grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(140px, 1fr));
}

.alerts-command-filters .filter-actions {
    justify-content: flex-start;
}

.filter-field span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.filter-field span svg {
    width: 14px;
    height: 14px;
    color: var(--soft-purple);
}

.filter-actions button {
    gap: 8px;
}

.alerts-command-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 18px;
    align-items: start;
}

.alert-card-list,
.alerts-side-panel {
    display: grid;
    gap: 14px;
}

.section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    padding: 4px 2px;
}

.section-heading h2 {
    margin: 0;
    font-size: 18px;
}

.section-heading p {
    margin: 5px 0 0;
    color: var(--text-muted);
    font-size: 13px;
}

.alert-operation-card {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--border);
    border-left-width: 3px;
    border-radius: 10px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.alert-operation-card:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.42);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
    transform: translateY(-1px);
}

.alert-operation-card.status-card-acknowledged,
.alert-operation-card.is-muted {
    opacity: 0.82;
}

.alert-operation-card.status-card-resolved {
    opacity: 0.7;
    border-left-color: rgba(148, 163, 184, 0.42);
}

.severity-border-critical {
    border-left-color: rgba(239, 68, 68, 0.82);
}

.severity-border-warning {
    border-left-color: rgba(245, 158, 11, 0.82);
}

.severity-border-security {
    border-left-color: rgba(192, 132, 252, 0.82);
}

.severity-border-info {
    border-left-color: rgba(56, 189, 248, 0.82);
}

.alert-type-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid currentColor;
    border-radius: 11px;
}

.alert-type-icon svg {
    width: 20px;
    height: 20px;
}

.alert-operation-body {
    min-width: 0;
}

.alert-operation-topline {
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
}

.alert-operation-card h3 {
    margin: 0;
    color: var(--text-primary);
    font-size: 17px;
}

.alert-operation-card p {
    margin: 7px 0 0;
    color: var(--text-secondary);
    line-height: 1.5;
}

.alert-operation-meta {
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 13px;
    color: var(--text-muted);
    font-size: 12px;
}

.alert-operation-meta a {
    gap: 6px;
}

.alert-operation-meta svg {
    width: 14px;
    height: 14px;
}

.quick-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.quick-actions a,
.quick-actions button,
.quick-action-menu summary {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.74);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.quick-actions a:hover,
.quick-actions button:hover,
.quick-action-menu summary:hover {
    border-color: rgba(192, 132, 252, 0.48);
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.quick-actions svg {
    width: 14px;
    height: 14px;
}

.quick-actions form {
    display: inline-flex;
}

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

.quick-action-menu summary {
    list-style: none;
}

.quick-action-menu summary::-webkit-details-marker {
    display: none;
}

.quick-action-popover {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 8;
    display: grid;
    gap: 8px;
    width: 280px;
    padding: 10px;
    border: 1px solid var(--border-active);
    border-radius: 10px;
    background: var(--card-hover);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.32);
}

.quick-action-popover form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
}

.quick-action-popover input,
.quick-action-popover textarea {
    width: 100%;
    min-height: 34px;
    padding: 8px 10px;
    border: 1px solid var(--border);
    border-radius: 8px;
    outline: 0;
    background: #0b0d16;
    color: var(--text-primary);
    font: inherit;
    font-size: 12px;
}

.comment-menu .quick-action-popover,
.comment-popover {
    width: 320px;
}

.comment-popover {
    grid-template-columns: 1fr;
}

.comment-popover button {
    justify-content: center;
}

.alert-event-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 12px;
}

.alert-event-strip span {
    padding: 5px 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.05);
    font-size: 11px;
}

.side-card {
    overflow: hidden;
}

.compact-header {
    padding-bottom: 10px;
}

.compact-header h2 {
    display: flex;
    align-items: center;
    gap: 8px;
}

.compact-header h2 svg {
    width: 17px;
    height: 17px;
    color: var(--soft-purple);
}

.side-list,
.affected-list {
    display: grid;
    gap: 9px;
    padding: 0 14px 14px;
}

.side-list-item,
.affected-row {
    gap: 10px;
    padding: 11px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: rgba(6, 7, 13, 0.22);
    transition: border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.side-list-item:hover,
.affected-row:hover {
    border-color: rgba(167, 139, 250, 0.36);
    background: rgba(23, 26, 43, 0.38);
    transform: translateY(-1px);
}

.side-list-item span:last-child,
.affected-row span:first-child {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.side-list-item strong,
.affected-row strong {
    overflow: hidden;
    color: var(--text-primary);
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.side-list-item small,
.affected-row small {
    color: var(--text-muted);
}

.severity-dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: var(--text-muted);
}

.severity-dot-critical {
    background: var(--critical);
}

.severity-dot-warning {
    background: var(--unknown);
}

.severity-dot-security {
    background: var(--glow-purple);
}

.severity-dot-info {
    background: var(--info);
}

.resolved-item {
    border-color: rgba(34, 197, 94, 0.16);
    background: rgba(34, 197, 94, 0.05);
}

.resolved-item > svg {
    width: 18px;
    height: 18px;
    color: var(--online);
}

.affected-row {
    justify-content: space-between;
}

.side-empty {
    padding: 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text-muted);
    background: rgba(6, 7, 13, 0.2);
    font-size: 13px;
}

.empty-alert-state {
    display: grid;
    justify-items: center;
    gap: 9px;
    padding: 34px 20px;
    text-align: center;
}

.empty-alert-state svg {
    width: 34px;
    height: 34px;
    color: var(--online);
}

.empty-alert-state strong {
    color: var(--text-primary);
}

.empty-alert-state p {
    max-width: 460px;
}

.toast-stack {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 20;
    display: grid;
    gap: 10px;
    width: min(360px, calc(100vw - 44px));
}

.alert-queue-heading {
    align-items: center;
}

.alert-view-toggle {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.36);
}

.alert-view-toggle button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
}

.alert-view-toggle button svg {
    width: 14px;
    height: 14px;
}

.alert-view-toggle button:hover,
.alert-view-toggle button.is-active {
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
}

.alert-bulk-bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.34);
    color: var(--text-secondary);
    font-size: 12px;
}

.alert-bulk-bar label,
.alert-bulk-bar button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.alert-bulk-bar label {
    margin-right: auto;
    color: var(--text-primary);
    font-weight: 700;
}

.alert-bulk-bar input {
    accent-color: var(--owl-purple);
}

.alert-bulk-bar button {
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.76);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
}

.alert-bulk-bar button:hover {
    border-color: rgba(192, 132, 252, 0.48);
    background: rgba(124, 58, 237, 0.13);
    color: var(--text-primary);
}

.alert-bulk-bar svg {
    width: 14px;
    height: 14px;
}

.alert-queue {
    display: grid;
    gap: 12px;
}

.alert-operation-card {
    grid-template-columns: 26px 44px minmax(0, 1fr);
}

.alert-operation-card.is-selected {
    border-color: rgba(192, 132, 252, 0.62);
    box-shadow: 0 0 0 1px rgba(192, 132, 252, 0.18), 0 18px 42px rgba(0, 0, 0, 0.22);
}

.alert-select-cell {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 11px;
}

.alert-select-cell input {
    width: 16px;
    height: 16px;
    accent-color: var(--owl-purple);
}

.alert-title-button {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.alert-title-button:hover h3 {
    color: var(--soft-purple);
}

.alert-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.06);
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 800;
}

.alert-status svg {
    width: 13px;
    height: 13px;
}

.alert-status-open {
    border-color: rgba(56, 189, 248, 0.28);
    background: rgba(56, 189, 248, 0.08);
    color: var(--info);
}

.alert-status-acknowledged {
    border-color: rgba(167, 139, 250, 0.28);
    background: rgba(124, 58, 237, 0.1);
    color: var(--soft-purple);
}

.alert-status-muted,
.alert-status-temporary {
    border-color: rgba(245, 158, 11, 0.3);
    background: rgba(245, 158, 11, 0.08);
    color: var(--unknown);
}

.alert-status-resolved {
    border-color: rgba(34, 197, 94, 0.28);
    background: rgba(34, 197, 94, 0.08);
    color: var(--online);
}

.alert-queue.view-compact {
    gap: 8px;
}

.alert-queue.view-compact .alert-operation-card {
    grid-template-columns: 24px 36px minmax(0, 1fr);
    gap: 10px;
    padding: 11px 12px;
}

.alert-queue.view-compact .alert-type-icon {
    width: 34px;
    height: 34px;
    border-radius: 9px;
}

.alert-queue.view-compact .alert-type-icon svg {
    width: 17px;
    height: 17px;
}

.alert-queue.view-compact .alert-operation-card p,
.alert-queue.view-compact .alert-event-strip,
.alert-queue.view-compact .quick-actions {
    display: none;
}

.alert-queue.view-compact .alert-operation-card h3 {
    font-size: 14px;
}

.alert-queue.view-compact .alert-operation-meta {
    margin-top: 8px;
}

.alert-queue.view-grouped .alert-group-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 6px;
    padding: 8px 10px;
    border: 1px solid rgba(167, 139, 250, 0.16);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.08);
    color: var(--text-primary);
    font-size: 12px;
    font-weight: 800;
}

.alert-queue.view-grouped .alert-group-heading small {
    color: var(--text-muted);
    font-weight: 600;
}

.alert-drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 60;
    background: rgba(2, 4, 10, 0.52);
    backdrop-filter: blur(3px);
}

.alert-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 61;
    display: flex;
    flex-direction: column;
    width: min(520px, calc(100vw - 24px));
    height: 100vh;
    border-left: 1px solid rgba(167, 139, 250, 0.24);
    background:
        radial-gradient(circle at 20% 0%, rgba(124, 58, 237, 0.18), transparent 34%),
        linear-gradient(180deg, #10121d, #080a12);
    box-shadow: -24px 0 70px rgba(0, 0, 0, 0.42);
    transform: translateX(104%);
    transition: transform 220ms ease;
}

.alert-drawer.is-open {
    transform: translateX(0);
}

.alert-drawer header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 18px 14px;
    border-bottom: 1px solid rgba(167, 139, 250, 0.16);
}

.alert-drawer header span {
    color: var(--soft-purple);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.alert-drawer header h2 {
    margin: 5px 0 0;
    color: var(--text-primary);
    font-size: 20px;
}

.alert-drawer header p {
    margin: 6px 0 0;
    color: var(--text-muted);
    font-size: 13px;
}

.alert-drawer header button {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 9px;
    background: rgba(11, 13, 22, 0.74);
    color: var(--text-secondary);
    cursor: pointer;
}

.alert-drawer header button:hover {
    border-color: rgba(192, 132, 252, 0.5);
    color: var(--text-primary);
}

.alert-drawer-body {
    display: grid;
    gap: 12px;
    overflow: auto;
    padding: 16px 18px 20px;
}

.alert-drawer-body section {
    padding: 14px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.28);
}

.alert-drawer-body h3 {
    margin: 0 0 10px;
    color: var(--text-primary);
    font-size: 13px;
}

.alert-drawer-body p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.5;
}

.alert-drawer-body dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 12px;
}

.alert-drawer-body dl div {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 8px;
    background: rgba(15, 17, 29, 0.68);
}

.alert-drawer-body dt {
    color: var(--text-muted);
    font-size: 11px;
}

.alert-drawer-body dd {
    margin: 4px 0 0;
    overflow: hidden;
    color: var(--text-primary);
    font-size: 13px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alert-drawer-body a,
.alert-drawer-body button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.alert-drawer-body a:hover,
.alert-drawer-body button:hover {
    border-color: rgba(192, 132, 252, 0.52);
    color: var(--text-primary);
}

.alert-drawer-body textarea {
    width: 100%;
    min-height: 94px;
    margin-bottom: 10px;
    padding: 10px 11px;
    border: 1px solid var(--border);
    border-radius: 9px;
    outline: 0;
    background: #090b13;
    color: var(--text-primary);
    font: inherit;
    line-height: 1.5;
    resize: vertical;
}

.alert-drawer-body textarea:focus {
    border-color: rgba(192, 132, 252, 0.5);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.14);
}

.alert-drawer-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.alert-action-toast {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 80;
    max-width: min(380px, calc(100vw - 44px));
    padding: 12px 14px;
    border: 1px solid rgba(34, 197, 94, 0.32);
    border-radius: 10px;
    background: rgba(6, 16, 12, 0.94);
    color: var(--text-primary);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34);
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 170ms ease, transform 170ms ease;
}

.alert-action-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.alert-toast {
    display: flex;
    gap: 11px;
    padding: 13px;
    border: 1px solid rgba(34, 197, 94, 0.26);
    border-radius: 10px;
    background: rgba(17, 19, 34, 0.96);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
    transition: opacity 220ms ease, transform 220ms ease;
}

.message-toast-stack {
    bottom: auto;
    top: 22px;
}

.toast-info {
    border-color: rgba(124, 58, 237, 0.34);
}

.toast-info svg {
    color: var(--soft-purple);
}

.toast-success {
    border-color: rgba(34, 197, 94, 0.28);
}

.toast-success svg {
    color: var(--online);
}

.toast-warning {
    border-color: rgba(245, 158, 11, 0.3);
}

.toast-warning svg {
    color: var(--unknown);
}

.toast-error {
    border-color: rgba(239, 68, 68, 0.3);
}

.toast-error svg {
    color: var(--critical);
}

.alert-toast svg {
    width: 20px;
    height: 20px;
    color: var(--online);
    flex: 0 0 auto;
}

.alert-toast span {
    display: grid;
    gap: 3px;
}

.alert-toast strong {
    color: var(--text-primary);
    font-size: 13px;
}

.alert-toast small {
    color: var(--text-muted);
}

.alert-toast.is-hidden {
    opacity: 0;
    transform: translateY(8px);
    pointer-events: none;
}

.noc-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background:
        radial-gradient(circle at 10% 0%, rgba(124, 58, 237, 0.16), transparent 34%),
        linear-gradient(135deg, rgba(17, 19, 34, 0.98), rgba(11, 13, 22, 0.98));
}

.noc-title-wrap,
.noc-actions,
.noc-refresh-chip,
.noc-actions button,
.noc-panel-header,
.noc-kpi {
    display: flex;
    align-items: center;
}

.noc-title-wrap {
    gap: 12px;
}

.noc-mark {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(192, 132, 252, 0.3);
    border-radius: 10px;
    color: var(--glow-purple);
    background: rgba(124, 58, 237, 0.12);
    box-shadow: 0 0 32px rgba(124, 58, 237, 0.11);
}

.noc-mark svg {
    width: 18px;
    height: 18px;
}

.noc-hero h1 {
    margin: 0;
    font-size: 26px;
    line-height: 1;
}

.noc-hero h1::after {
    content: "";
    display: block;
    width: 56px;
    height: 2px;
    margin-top: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple), transparent);
}

.noc-hero p {
    margin: 6px 0 0;
    color: var(--text-secondary);
    font-size: 13px;
}

.noc-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    color: var(--text-muted);
    font-size: 12px;
}

.noc-refresh-chip {
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 999px;
    background: rgba(11, 13, 22, 0.72);
}

.noc-refresh-chip svg {
    width: 14px;
    height: 14px;
    color: var(--soft-purple);
}

.noc-actions button {
    gap: 8px;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(167, 139, 250, 0.34);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 13px;
    transition: color 170ms ease, border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.noc-actions button:hover {
    border-color: rgba(192, 132, 252, 0.54);
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
    transform: translateY(-1px);
}

.noc-actions button.is-active {
    border-color: rgba(34, 197, 94, 0.46);
    background: rgba(34, 197, 94, 0.14);
    color: #bbf7d0;
}

.noc-actions button svg {
    width: 15px;
    height: 15px;
}

.noc-kpi-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.noc-kpi {
    position: relative;
    align-items: flex-start;
    flex-direction: column;
    min-height: 132px;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.noc-kpi:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.36);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.14);
    transform: translateY(-1px);
}

.noc-kpi svg {
    width: 20px;
    height: 20px;
    margin-bottom: 18px;
    color: var(--soft-purple);
}

.noc-kpi span {
    color: var(--text-muted);
    font-size: 12px;
}

.noc-kpi strong {
    margin-top: auto;
    color: var(--text-primary);
    font-size: 32px;
    line-height: 1;
}

.kpi-online svg,
.kpi-online strong {
    color: var(--online);
}

.kpi-offline svg,
.kpi-offline strong {
    color: var(--offline);
}

.kpi-unknown svg,
.kpi-unknown strong,
.kpi-warning svg,
.kpi-warning strong {
    color: var(--unknown);
}

.kpi-critical svg,
.kpi-critical strong {
    color: var(--critical);
}

.kpi-security svg,
.kpi-security strong {
    color: var(--glow-purple);
}

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

.noc-panel {
    min-height: 360px;
}

.noc-panel-wide {
    grid-column: 1 / -1;
    min-height: 0;
}

.noc-panel-critical {
    border-color: rgba(239, 68, 68, 0.18);
}

.noc-panel-header {
    justify-content: space-between;
    gap: 14px;
    padding: 18px 18px 12px;
}

.noc-panel-header h2 {
    display: flex;
    align-items: center;
    gap: 9px;
}

.noc-panel-header h2 svg {
    width: 18px;
    height: 18px;
    color: var(--soft-purple);
}

.noc-list {
    display: grid;
    gap: 10px;
    padding: 0 18px 18px;
}

.noc-alert-row,
.noc-endpoint-row,
.noc-disk-row {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: rgba(6, 7, 13, 0.24);
    transition: border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

.noc-alert-row {
    grid-template-columns: 34px minmax(0, 1fr);
}

.noc-alert-row:hover,
.noc-endpoint-row:hover,
.noc-disk-row:hover {
    border-color: rgba(167, 139, 250, 0.36);
    background: rgba(23, 26, 43, 0.42);
    transform: translateY(-1px);
}

.noc-row-icon {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border: 1px solid currentColor;
    border-radius: 9px;
}

.noc-row-icon svg {
    width: 17px;
    height: 17px;
}

.noc-alert-row span:last-child,
.noc-disk-main {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.noc-alert-row strong,
.noc-endpoint-row strong,
.noc-disk-row strong {
    overflow: hidden;
    color: var(--text-primary);
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.noc-alert-row small,
.noc-alert-row em,
.noc-endpoint-row small,
.noc-endpoint-row > span:last-child,
.noc-disk-row small {
    color: var(--text-muted);
    font-size: 12px;
    font-style: normal;
}

.noc-alert-row em {
    color: var(--text-secondary);
}

.noc-endpoint-row {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.noc-disk-row {
    grid-template-columns: minmax(0, 1fr) 110px;
    align-items: center;
}

.noc-mini-bar {
    display: block;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #0b0d16;
}

.noc-mini-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--owl-purple), var(--soft-purple));
}

.noc-mini-bar .disk-critical {
    background: var(--critical);
}

.noc-mini-bar .disk-warning {
    background: var(--unknown);
}

.noc-positive {
    display: grid;
    justify-items: center;
    gap: 7px;
    padding: 28px 18px;
    border: 1px solid rgba(34, 197, 94, 0.16);
    border-radius: 10px;
    background: rgba(34, 197, 94, 0.05);
    color: var(--text-muted);
    text-align: center;
}

.noc-positive svg {
    width: 28px;
    height: 28px;
    color: var(--online);
}

.noc-positive strong {
    color: var(--text-primary);
}

.muted-positive {
    border-color: rgba(148, 163, 184, 0.14);
    background: rgba(148, 163, 184, 0.05);
}

.noc-timeline {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0 18px 18px;
    list-style: none;
}

.noc-timeline li {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr);
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: rgba(6, 7, 13, 0.22);
}

.noc-timeline .severity-dot {
    margin-top: 4px;
}

.noc-timeline strong {
    color: var(--text-primary);
    font-size: 13px;
}

.noc-timeline p {
    margin: 5px 0 0;
    color: var(--text-muted);
    font-size: 12px;
}

.noc-footer {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding: 14px 2px 0;
    color: var(--text-muted);
    font-size: 12px;
}

body.page-noc.noc-tv-mode .breadcrumbs,
body.page-noc.noc-tv-mode .topbar {
    opacity: 0.24;
}

body.page-noc.noc-tv-mode .content {
    max-width: none;
}

body.page-noc.noc-tv-mode .noc-hero,
body.page-noc.noc-tv-mode .noc-kpi,
body.page-noc.noc-tv-mode .noc-panel {
    border-color: rgba(167, 139, 250, 0.32);
}

body.page-noc.noc-tv-mode .noc-panel-critical,
body.page-noc.noc-tv-mode .kpi-critical {
    box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.16), 0 18px 48px rgba(0, 0, 0, 0.26);
}

body.page-noc .noc-wallboard {
    display: grid;
    gap: 14px;
}

body.page-noc .noc-hero {
    position: relative;
    overflow: hidden;
}

body.page-noc .noc-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    border-top: 1px solid rgba(167, 139, 250, 0.48);
    background: radial-gradient(circle at 8% 0%, rgba(124, 58, 237, 0.2), transparent 36%);
    pointer-events: none;
}

body.page-noc .noc-title-wrap,
body.page-noc .noc-actions {
    position: relative;
    z-index: 1;
}

body.page-noc .noc-live-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 22px;
    padding: 0 9px;
    border: 1px solid rgba(34, 197, 94, 0.34);
    border-radius: 999px;
    background: rgba(34, 197, 94, 0.1);
    color: #86efac;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.04em;
}

body.page-noc .noc-live-pill span {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55);
    animation: nocLivePulse 1.4s ease-out infinite;
}

body.page-noc .noc-summary-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

body.page-noc .noc-summary-strip article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 56px;
    padding: 12px 14px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(17, 19, 34, 0.94), rgba(7, 10, 20, 0.94));
}

body.page-noc .noc-summary-strip span {
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 700;
}

body.page-noc .noc-summary-strip strong {
    color: var(--text-primary);
    font-size: 26px;
    line-height: 1;
}

body.page-noc .noc-summary-strip .is-critical strong {
    color: var(--critical);
}

body.page-noc .noc-summary-strip .is-offline strong {
    color: var(--offline);
}

body.page-noc .noc-summary-strip .is-warning strong {
    color: var(--unknown);
}

body.page-noc .noc-kpi-grid {
    margin-bottom: 0;
}

body.page-noc .noc-kpi {
    min-height: 104px;
    padding: 13px;
    border-radius: 9px;
}

body.page-noc .noc-kpi svg {
    margin-bottom: 10px;
}

body.page-noc .noc-kpi strong {
    font-size: 28px;
}

body.page-noc .noc-grid {
    grid-template-columns: repeat(4, minmax(260px, 1fr));
    gap: 14px;
}

body.page-noc .noc-panel {
    min-height: 390px;
}

body.page-noc .noc-panel-wide {
    grid-column: 1 / -1;
    min-height: 0;
}

body.page-noc .noc-panel-header {
    padding: 15px 15px 10px;
}

body.page-noc .noc-panel-header h2 {
    margin-bottom: 2px;
}

body.page-noc .noc-list {
    padding: 0 15px 15px;
}

body.page-noc .noc-card-actionable {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

body.page-noc .noc-alert-row.noc-card-actionable,
body.page-noc .noc-endpoint-row.noc-card-actionable,
body.page-noc .noc-disk-row.noc-card-actionable {
    padding-bottom: 12px;
}

body.page-noc .noc-alert-row.noc-card-actionable {
    grid-template-columns: 34px minmax(0, 1fr);
}

body.page-noc .noc-disk-row.noc-card-actionable {
    grid-template-columns: minmax(0, 1fr) 104px;
}

body.page-noc .noc-card-actionable::after {
    content: "";
    position: absolute;
    inset: 0;
    border-left: 3px solid transparent;
    pointer-events: none;
    transition: border-color 160ms ease;
}

body.page-noc .noc-card-actionable.severity-critical::after {
    border-left-color: rgba(239, 68, 68, 0.72);
}

body.page-noc .noc-card-actionable.severity-security::after {
    border-left-color: rgba(192, 132, 252, 0.72);
}

body.page-noc .noc-card-actionable:hover,
body.page-noc .noc-card-actionable:focus-visible {
    border-color: rgba(167, 139, 250, 0.42);
    background: rgba(23, 26, 43, 0.56);
    outline: none;
}

body.page-noc .noc-card-actionable.has-mock-status::before {
    content: attr(data-mock-status-label);
    position: absolute;
    top: 8px;
    right: 10px;
    padding: 3px 7px;
    border-radius: 999px;
    border: 1px solid rgba(34, 197, 94, 0.35);
    background: rgba(10, 18, 26, 0.88);
    color: #86efac;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

/* Jobs / remote task queue */
body.page-jobs .content {
    max-width: none;
}

.jobs-page {
    display: grid;
    gap: 16px;
}

.jobs-module-tabs {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px;
    border: 1px solid var(--border);
    border-radius: 999px;
    overflow-x: auto;
    background: rgba(7, 9, 16, 0.78);
}

.jobs-module-tabs button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 13px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--text-muted);
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
    cursor: pointer;
}

.jobs-module-tabs button:hover,
.jobs-module-tabs button.is-active {
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
}

.jobs-module-tabs svg {
    width: 15px;
    height: 15px;
}

.jobs-tab-panel[hidden] {
    display: none;
}

.jobs-tab-panel {
    display: grid;
    gap: 16px;
}

.jobs-metrics .metric-card {
    cursor: pointer;
    text-align: left;
}

.jobs-metrics button.metric-card {
    font: inherit;
    color: inherit;
}

.jobs-filter-panel {
    padding: 14px;
}

.jobs-table-panel {
    padding: 0;
    overflow: hidden;
}

.jobs-table-panel .section-heading {
    padding: 16px;
    border-bottom: 1px solid var(--border);
}

.jobs-table-wrap {
    max-height: calc(100vh - 380px);
    overflow: auto;
}

.jobs-table th,
.jobs-table td {
    vertical-align: middle;
}

.job-status-badge,
.job-type-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 24px;
    padding: 4px 8px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    background: rgba(15, 23, 42, 0.72);
    color: var(--text);
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.job-status-queued,
.job-status-sent {
    border-color: rgba(56, 189, 248, 0.32);
    color: #bae6fd;
}

.job-status-running {
    border-color: rgba(245, 158, 11, 0.38);
    color: #fcd34d;
}

.job-status-completed {
    border-color: rgba(34, 197, 94, 0.35);
    color: #86efac;
}

.job-status-failed,
.job-status-expired {
    border-color: rgba(239, 68, 68, 0.38);
    color: #fca5a5;
}

.job-status-cancelled {
    border-color: rgba(148, 163, 184, 0.28);
    color: #cbd5e1;
}

.job-type-chip {
    border-color: rgba(124, 58, 237, 0.34);
    color: #ddd6fe;
}

.job-type-chip svg {
    width: 14px;
    height: 14px;
}

.job-command {
    display: block;
    margin-top: 5px;
    color: #94a3b8;
    font-size: 11px;
}

.job-result {
    display: block;
    max-width: 190px;
    color: #f8fafc;
    font-size: 12px;
}

.jobs-row-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
}

.jobs-row-actions button,
.jobs-row-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 30px;
    min-height: 30px;
    padding: 0;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.68);
    color: #cbd5e1;
    cursor: pointer;
    text-decoration: none;
}

.jobs-row-actions button:hover,
.jobs-row-actions a:hover {
    border-color: rgba(167, 139, 250, 0.36);
    color: #ffffff;
}

.jobs-row-actions svg {
    display: block;
    width: 15px;
    height: 15px;
    stroke: currentColor;
}

.jobs-compact .jobs-table th,
.jobs-compact .jobs-table td {
    padding-top: 7px;
    padding-bottom: 7px;
}

.jobs-drawer pre {
    max-height: 180px;
    overflow: auto;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    background: rgba(2, 6, 12, 0.64);
    color: #e5edf7;
    white-space: pre-wrap;
}

.jobs-drawer pre.stderr {
    color: #fca5a5;
}

.jobs-timeline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.operational-calendar-panel,
.task-template-panel {
    padding: 0;
    overflow: hidden;
}

.jobs-calendar-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px;
    border-bottom: 1px solid var(--border);
}

.jobs-calendar-toolbar h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--text-primary);
    font-size: 18px;
}

.jobs-calendar-toolbar p {
    margin: 5px 0 0;
    color: var(--text-muted);
}

.jobs-calendar-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.jobs-calendar-actions button,
.task-template-card button,
.task-checklist-editor + button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.72);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.jobs-calendar-actions button:hover,
.task-template-card button:hover,
.task-checklist-editor + button:hover {
    border-color: rgba(167, 139, 250, 0.42);
    color: var(--text-primary);
}

.jobs-calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(150px, 1fr));
    gap: 1px;
    padding: 1px;
    background: rgba(148, 163, 184, 0.12);
    overflow-x: auto;
}

.calendar-weekday {
    padding: 9px;
    background: rgba(7, 9, 16, 0.96);
    color: #9fb0c8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.calendar-day {
    display: grid;
    align-content: start;
    gap: 8px;
    min-height: 154px;
    padding: 9px;
    background: rgba(9, 11, 20, 0.96);
}

.calendar-day.is-muted {
    background: rgba(7, 9, 16, 0.7);
}

.calendar-day.is-today {
    box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.34);
}

.calendar-day header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.calendar-day header strong {
    color: #f8fafc;
}

.calendar-day header button {
    display: inline-grid;
    place-items: center;
    min-width: 24px;
    min-height: 24px;
    padding: 3px;
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 7px;
    background: rgba(124, 58, 237, 0.1);
    color: var(--text-secondary);
    cursor: pointer;
}

.calendar-day header button svg {
    display: block;
    width: 16px;
    height: 16px;
}

.calendar-day-tasks {
    display: grid;
    gap: 6px;
}

.calendar-task {
    display: grid;
    gap: 2px;
    width: 100%;
    padding: 7px 8px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-left-width: 3px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.72);
    color: var(--text-secondary);
    text-align: left;
    cursor: pointer;
}

.calendar-task span {
    overflow: hidden;
    color: #f8fafc;
    font-size: 12px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.calendar-task small,
.calendar-day-tasks em {
    color: #9fb0c8;
    font-size: 11px;
}

.calendar-task-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 3px;
}

.calendar-task-badges span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    width: auto;
    min-height: 18px;
    padding: 0 5px;
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 999px;
    background: rgba(124, 58, 237, 0.08);
    color: #c4b5fd;
    font-size: 10px;
    font-weight: 900;
}

.calendar-task-badges svg {
    width: 11px;
    height: 11px;
}

.task-due-overdue {
    border-color: rgba(239, 68, 68, 0.38) !important;
    color: #fca5a5;
}

.task-due-today {
    border-color: rgba(245, 158, 11, 0.42) !important;
    color: #fcd34d;
}

.task-due-week {
    border-color: rgba(56, 189, 248, 0.34) !important;
    color: #bae6fd;
}

.task-due-done {
    border-color: rgba(34, 197, 94, 0.34) !important;
    color: #86efac;
}

.jobs-task-filter-panel {
    padding: 14px;
}

.jobs-task-filters {
    grid-template-columns: minmax(280px, 1.4fr) repeat(5, minmax(130px, 1fr));
}

.operational-task-table {
    min-width: 1280px;
}

.operational-task-table td strong {
    display: block;
    color: #f8fafc;
}

.operational-task-table td small {
    display: block;
    margin-top: 4px;
    color: #94a3b8;
}

.task-status-badge,
.task-priority-badge,
.task-category-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 3px 8px;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.72);
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.task-status-in_progress,
.task-status-scheduled {
    border-color: rgba(56, 189, 248, 0.32);
    color: #bae6fd;
}

.task-status-waiting {
    border-color: rgba(245, 158, 11, 0.34);
    color: #fcd34d;
}

.task-status-done {
    border-color: rgba(34, 197, 94, 0.34);
    color: #86efac;
}

.task-status-cancelled {
    opacity: 0.72;
}

.task-priority-critical {
    border-color: rgba(239, 68, 68, 0.42);
    color: #fca5a5;
}

.task-priority-high {
    border-color: rgba(245, 158, 11, 0.36);
    color: #fcd34d;
}

.task-priority-low {
    border-color: rgba(148, 163, 184, 0.22);
    color: #cbd5e1;
}

.task-category-badge {
    border-color: rgba(124, 58, 237, 0.34);
    color: #ddd6fe;
}

.task-progress {
    display: block;
    width: 82px;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.14);
}

.task-progress i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple));
}

.task-links {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.task-links a,
.task-links span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
}

.task-links svg {
    width: 13px;
    height: 13px;
    color: var(--soft-purple);
}

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

.task-link-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 9px;
    background: rgba(7, 9, 16, 0.46);
}

.task-link-card > span {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(167, 139, 250, 0.24);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.1);
    color: #c4b5fd;
}

.task-link-card small,
.task-linked-job small {
    display: block;
    color: #8ea3bd;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.task-link-card strong,
.task-linked-job strong {
    display: block;
    overflow: hidden;
    color: #f8fafc;
    font-size: 12px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.task-link-card.is-muted {
    opacity: 0.68;
}

.task-link-actions,
.task-job-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.task-link-actions button,
.task-job-options button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.72);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.task-link-actions button:hover,
.task-job-options button:hover {
    border-color: rgba(34, 197, 94, 0.34);
    color: #bbf7d0;
}

.task-linked-jobs {
    display: grid;
    gap: 8px;
}

.task-linked-job {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 9px;
    background: rgba(7, 9, 16, 0.46);
}

.task-linked-job > div {
    min-width: 0;
}

.task-linked-job > div:last-child {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 8px;
}

.task-linked-job button {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.08);
    color: #cbd5e1;
    cursor: pointer;
}

.task-template-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 12px;
    padding: 16px;
}

.task-template-card {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: rgba(9, 11, 20, 0.82);
}

.task-template-card header {
    display: grid;
    gap: 8px;
}

.task-template-card header strong {
    color: #f8fafc;
    font-size: 15px;
}

.task-template-card p,
.task-template-card li,
.task-template-card dt {
    color: #9fb0c8;
    font-size: 12px;
}

.task-template-card ol {
    display: grid;
    gap: 5px;
    margin: 0;
    padding-left: 18px;
}

.task-template-card dl,
.task-template-card dd {
    margin: 0;
}

.task-drawer-form,
.task-drawer-form section,
.task-checklist-editor,
.task-timeline {
    display: grid;
    gap: 10px;
}

.task-drawer-form label {
    display: grid;
    gap: 6px;
    color: #9fb0c8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.task-drawer-form input,
.task-drawer-form select,
.task-drawer-form textarea {
    width: 100%;
    min-height: 38px;
    padding: 9px 10px;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 8px;
    outline: 0;
    background: rgba(7, 9, 16, 0.76);
    color: #f8fafc;
    font: inherit;
    font-size: 13px;
    text-transform: none;
}

.task-drawer-form textarea {
    resize: vertical;
}

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

.task-check-row {
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
}

.task-check-row input[type="checkbox"] {
    width: 16px;
    min-height: 16px;
}

.task-check-row button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 0 9px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.1);
    color: #ddd6fe;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 900;
}

.task-check-row button:hover {
    border-color: rgba(167, 139, 250, 0.42);
    color: #f8fafc;
}

.task-timeline article {
    padding: 9px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.36);
}

.task-timeline strong {
    color: #f8fafc;
    font-size: 12px;
}

.task-timeline span,
.task-timeline p {
    display: block;
    margin: 3px 0 0;
    color: #9fb0c8;
    font-size: 12px;
}

body.page-jobs .jobs-table tr:hover td,
body.page-jobs .jobs-table tbody tr:hover,
body.page-jobs .operational-task-table tr:hover td,
body.page-jobs .operational-task-table tbody tr:hover {
    background: transparent;
    box-shadow: none;
    transform: none;
}

body.page-jobs .jobs-table td,
body.page-jobs .metric-card,
body.page-jobs .panel,
body.page-jobs .calendar-task,
body.page-jobs .task-template-card,
body.page-jobs .task-link-card,
body.page-jobs .task-linked-job {
    transition: none;
}

body.page-jobs .calendar-task:hover,
body.page-jobs .task-template-card:hover,
body.page-jobs .task-link-card:hover,
body.page-jobs .task-linked-job:hover {
    box-shadow: none;
    transform: none;
}

body.page-jobs .calendar-task:hover {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.16);
}

body.page-jobs .task-template-card:hover {
    background: rgba(9, 11, 20, 0.82);
    border-color: var(--border);
}

body.page-jobs .task-link-card:hover,
body.page-jobs .task-linked-job:hover {
    background: rgba(7, 9, 16, 0.46);
    border-color: rgba(148, 163, 184, 0.16);
}

body.page-jobs .jobs-metrics .metric-card:hover,
body.page-jobs .jobs-table-panel:hover,
body.page-jobs .operational-calendar-panel:hover,
body.page-jobs .task-template-panel:hover,
body.page-jobs .jobs-task-filter-panel:hover,
body.page-jobs .jobs-filter-panel:hover {
    background: var(--card);
    border-color: var(--border);
    box-shadow: none;
    transform: none;
}

body.page-jobs .jobs-row-actions button:hover,
body.page-jobs .jobs-row-actions a:hover,
body.page-jobs .task-linked-job button:hover {
    border-color: rgba(148, 163, 184, 0.18);
    color: #cbd5e1;
}

body.page-jobs .task-template-card button:hover,
body.page-jobs .task-checklist-editor + button:hover,
body.page-jobs .task-link-actions button:hover,
body.page-jobs .task-job-options button:hover,
body.page-jobs .task-check-row button:hover {
    border-color: rgba(167, 139, 250, 0.22);
    color: var(--text-secondary);
    background: rgba(11, 13, 22, 0.72);
}

body.page-jobs .task-check-row button:hover {
    background: rgba(124, 58, 237, 0.1);
    color: #ddd6fe;
}

@media (max-width: 980px) {
    .jobs-table-wrap {
        max-height: none;
    }

    .jobs-table {
        min-width: 980px;
    }

    .jobs-calendar-toolbar,
    .jobs-calendar-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .jobs-task-filters,
    .task-form-grid,
    .task-link-summary {
        grid-template-columns: 1fr;
    }

    .task-linked-job {
        align-items: flex-start;
        flex-direction: column;
    }
}

body.page-noc .noc-card-actionable.severity-critical {
    animation: nocCriticalGlow 2.2s ease-in-out infinite;
}

body.page-noc .noc-card-actions {
    display: flex;
    position: absolute;
    right: 9px;
    bottom: 9px;
    left: 9px;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px;
    opacity: 0;
    transform: translateY(8px);
    pointer-events: none;
    transition: opacity 150ms ease, transform 150ms ease;
}

body.page-noc .noc-card-actionable:hover .noc-card-actions,
body.page-noc .noc-card-actionable:focus-within .noc-card-actions {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

body.page-noc .noc-card-actions a,
body.page-noc .noc-card-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 25px;
    padding: 0 8px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 7px;
    background: rgba(3, 7, 18, 0.94);
    color: #dbeafe;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

body.page-noc .noc-card-actions a:hover,
body.page-noc .noc-card-actions button:hover {
    border-color: rgba(34, 197, 94, 0.42);
    color: #bbf7d0;
}

body.page-noc .noc-card-actions svg {
    width: 12px;
    height: 12px;
}

body.page-noc .noc-card-actions form {
    margin: 0;
}

body.page-noc .noc-timeline li.noc-card-actionable {
    transition: border-color 170ms ease, background-color 170ms ease, transform 170ms ease;
}

body.page-noc .noc-drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(0, 0, 0, 0.48);
}

body.page-noc .noc-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 90;
    width: min(430px, calc(100vw - 24px));
    border-left: 1px solid rgba(167, 139, 250, 0.26);
    background: linear-gradient(180deg, rgba(13, 17, 31, 0.98), rgba(6, 8, 16, 0.99));
    box-shadow: -24px 0 54px rgba(0, 0, 0, 0.38);
    transform: translateX(104%);
    transition: transform 180ms ease;
}

body.page-noc .noc-drawer.is-open {
    transform: translateX(0);
}

body.page-noc .noc-drawer header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 16px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

body.page-noc .noc-drawer header span {
    color: #a78bfa;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.page-noc .noc-drawer h2 {
    margin: 4px 0;
    color: var(--text-primary);
    font-size: 20px;
    line-height: 1.2;
}

body.page-noc .noc-drawer p {
    margin: 0;
    color: var(--text-secondary);
    font-size: 13px;
    line-height: 1.45;
}

body.page-noc .noc-drawer header button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.62);
    color: var(--text-secondary);
    cursor: pointer;
}

body.page-noc .noc-drawer-body {
    display: grid;
    gap: 12px;
    padding: 16px;
}

body.page-noc .noc-drawer-body section {
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 9px;
    background: rgba(3, 7, 18, 0.42);
}

body.page-noc .noc-drawer-body h3 {
    margin: 0 0 8px;
    color: var(--text-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.page-noc .noc-drawer-body strong {
    color: var(--text-primary);
}

body.page-noc .noc-drawer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-noc .noc-drawer-actions a,
body.page-noc .noc-drawer-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(167, 139, 250, 0.24);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-secondary);
    font: inherit;
    font-size: 13px;
    font-weight: 780;
    text-decoration: none;
    cursor: pointer;
}

body.page-noc .noc-toast {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 110;
    max-width: min(360px, calc(100vw - 36px));
    padding: 12px 14px;
    border: 1px solid rgba(34, 197, 94, 0.34);
    border-radius: 9px;
    background: rgba(4, 12, 9, 0.96);
    color: #bbf7d0;
    font-size: 13px;
    font-weight: 760;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34);
}

body.page-noc .noc-toast[hidden] {
    display: none;
}

body.page-noc.noc-tv-mode .noc-actions .noc-update-meta,
body.page-noc.noc-tv-mode .noc-actions [data-noc-sound] {
    display: none;
}

body.page-noc.noc-tv-mode .noc-grid {
    grid-template-columns: repeat(4, minmax(300px, 1fr));
}

body.page-noc.noc-tv-mode .noc-kpi {
    min-height: 128px;
}

body.page-noc.noc-tv-mode .noc-kpi strong,
body.page-noc.noc-tv-mode .noc-summary-strip strong {
    font-size: 34px;
}

@keyframes nocLivePulse {
    0% {
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55);
    }
    80%, 100% {
        box-shadow: 0 0 0 8px rgba(34, 197, 94, 0);
    }
}

@keyframes nocCriticalGlow {
    0%, 100% {
        box-shadow: 0 0 0 rgba(239, 68, 68, 0);
    }
    50% {
        box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.12);
    }
}

@media (max-width: 1280px) {
    body.page-noc .noc-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-noc .noc-summary-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body.page-noc .noc-summary-strip,
    body.page-noc .noc-grid,
    body.page-noc .noc-timeline {
        grid-template-columns: minmax(0, 1fr);
    }

    body.page-noc .noc-card-actions {
        position: static;
        margin-top: 10px;
        opacity: 1;
        transform: none;
        pointer-events: auto;
        justify-content: flex-start;
    }
}

.events-metrics {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.events-filters {
    grid-template-columns: minmax(240px, 1.4fr) repeat(5, minmax(135px, 1fr)) auto;
}

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

.event-row {
    display: grid;
    grid-template-columns: 82px 42px minmax(0, 1fr);
    gap: 14px;
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--card);
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.event-row:hover {
    background: var(--card-hover);
    border-color: rgba(167, 139, 250, 0.38);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.14);
    transform: translateY(-1px);
}

.event-time {
    display: grid;
    align-content: start;
    gap: 4px;
    color: var(--text-muted);
    font-size: 12px;
}

.event-time strong {
    color: var(--text-primary);
    font-size: 18px;
}

.event-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid currentColor;
    border-radius: 10px;
}

.event-icon svg {
    width: 19px;
    height: 19px;
}

.event-main {
    min-width: 0;
}

.event-title-line,
.event-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.event-title-line strong {
    color: var(--text-primary);
}

.event-title-line .mono {
    color: var(--text-muted);
    font-size: 12px;
}

.event-main p {
    margin: 8px 0 0;
    color: var(--text-secondary);
    line-height: 1.45;
}

.event-meta {
    margin-top: 11px;
    color: var(--text-muted);
    font-size: 12px;
}

.event-meta a,
.event-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.event-meta svg {
    width: 14px;
    height: 14px;
}

.events-page {
    display: grid;
    gap: 16px;
}

.events-filter-panel {
    display: grid;
    gap: 12px;
}

.event-category-strip {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 2px;
}

.event-category-strip button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 11px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 999px;
    background: rgba(6, 7, 13, 0.34);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.event-category-strip button:hover,
.event-category-strip button.is-active {
    border-color: rgba(192, 132, 252, 0.46);
    background: rgba(124, 58, 237, 0.14);
    color: var(--text-primary);
}

.event-category-strip svg {
    width: 14px;
    height: 14px;
}

.events-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 4px 2px;
}

.events-toolbar > div:first-child {
    display: grid;
    gap: 3px;
}

.events-toolbar strong {
    color: var(--text-primary);
}

.events-toolbar span {
    color: var(--text-muted);
    font-size: 12px;
}

.event-log-stream {
    position: relative;
    display: grid;
    gap: 12px;
}

.event-log-stream::before {
    content: "";
    position: absolute;
    top: 18px;
    bottom: 18px;
    left: 103px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(167, 139, 250, 0.32), transparent);
}

.event-log-entry {
    position: relative;
    cursor: pointer;
}

.event-log-entry::before {
    content: "";
    position: absolute;
    top: 29px;
    left: 98px;
    width: 11px;
    height: 11px;
    border: 2px solid rgba(192, 132, 252, 0.55);
    border-radius: 999px;
    background: #080a12;
}

.event-log-entry.is-selected {
    border-color: rgba(192, 132, 252, 0.62);
    box-shadow: 0 0 0 1px rgba(192, 132, 252, 0.16), 0 16px 38px rgba(0, 0, 0, 0.2);
}

.event-time small {
    color: var(--soft-purple);
    font-size: 11px;
}

.event-title-line code {
    padding: 4px 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    background: rgba(6, 7, 13, 0.36);
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 11px;
}

.event-origin-chip {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.06);
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 900;
}

.event-origin-agent,
.event-origin-inventory {
    border-color: rgba(56, 189, 248, 0.22);
    background: rgba(56, 189, 248, 0.08);
    color: var(--info);
}

.event-origin-alerts {
    border-color: rgba(245, 158, 11, 0.26);
    background: rgba(245, 158, 11, 0.08);
    color: var(--unknown);
}

.event-origin-security {
    border-color: rgba(192, 132, 252, 0.28);
    background: rgba(124, 58, 237, 0.1);
    color: var(--soft-purple);
}

.event-origin-jobs,
.event-origin-maintenance {
    border-color: rgba(34, 197, 94, 0.22);
    background: rgba(34, 197, 94, 0.08);
    color: var(--online);
}

.event-meta button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 9px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.7);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.event-meta button:hover {
    border-color: rgba(192, 132, 252, 0.44);
    color: var(--text-primary);
}

.event-table-panel {
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--card);
    overflow: hidden;
}

.event-table-scroll {
    overflow-x: auto;
}

.event-tech-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 980px;
}

.event-tech-table th,
.event-tech-table td {
    padding: 11px 12px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.1);
    color: var(--text-secondary);
    font-size: 12px;
    text-align: left;
    vertical-align: top;
}

.event-tech-table th {
    color: var(--text-muted);
    background: rgba(6, 7, 13, 0.32);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.event-tech-table tbody tr {
    cursor: pointer;
}

.event-tech-table tbody tr:hover {
    background: rgba(124, 58, 237, 0.08);
}

.event-drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 60;
    background: rgba(2, 4, 10, 0.52);
    backdrop-filter: blur(3px);
}

.event-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 61;
    display: flex;
    flex-direction: column;
    width: min(560px, calc(100vw - 24px));
    height: 100vh;
    border-left: 1px solid rgba(167, 139, 250, 0.24);
    background:
        radial-gradient(circle at 18% 0%, rgba(124, 58, 237, 0.18), transparent 34%),
        linear-gradient(180deg, #10121d, #080a12);
    box-shadow: -24px 0 70px rgba(0, 0, 0, 0.42);
    transform: translateX(104%);
    transition: transform 220ms ease;
}

.event-drawer.is-open {
    transform: translateX(0);
}

.event-drawer header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 18px 14px;
    border-bottom: 1px solid rgba(167, 139, 250, 0.16);
}

.event-drawer header span {
    color: var(--soft-purple);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.event-drawer header h2 {
    margin: 5px 0 0;
    color: var(--text-primary);
    font-size: 20px;
}

.event-drawer header p {
    margin: 6px 0 0;
    color: var(--text-muted);
    font-size: 13px;
}

.event-drawer header button {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 9px;
    background: rgba(11, 13, 22, 0.74);
    color: var(--text-secondary);
    cursor: pointer;
}

.event-drawer-body {
    display: grid;
    gap: 12px;
    overflow: auto;
    padding: 16px 18px 20px;
}

.event-drawer-body section {
    padding: 14px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    background: rgba(6, 7, 13, 0.28);
}

.event-drawer-body h3 {
    margin: 0 0 10px;
    color: var(--text-primary);
    font-size: 13px;
}

.event-drawer-body p,
.event-drawer-links span {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.5;
}

.event-drawer-body dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 12px;
}

.event-drawer-body dl div {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 8px;
    background: rgba(15, 17, 29, 0.68);
}

.event-drawer-body dt {
    color: var(--text-muted);
    font-size: 11px;
}

.event-drawer-body dd {
    margin: 4px 0 0;
    overflow: hidden;
    color: var(--text-primary);
    font-size: 13px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-drawer-links,
.event-drawer-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.event-drawer-body a,
.event-drawer-body button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(167, 139, 250, 0.22);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-secondary);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
}

.event-drawer-body a:hover,
.event-drawer-body button:hover {
    border-color: rgba(192, 132, 252, 0.52);
    color: var(--text-primary);
}

.event-drawer-body pre {
    overflow: auto;
    max-height: 280px;
    margin: 0;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 9px;
    background: #05070d;
    color: #c4b5fd;
    font-family: var(--font-mono);
    font-size: 12px;
    line-height: 1.55;
}

.event-action-toast {
    z-index: 80;
}

.endpoint-badge,
.event-type-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    background: rgba(6, 7, 13, 0.36);
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 11px;
}

.event-type-alerts,
.event-type-security {
    border-color: rgba(192, 132, 252, 0.26);
    background: rgba(124, 58, 237, 0.1);
    color: var(--soft-purple);
}

.event-type-agent,
.event-type-inventory {
    border-color: rgba(56, 189, 248, 0.22);
    background: rgba(56, 189, 248, 0.08);
    color: var(--info);
}

.event-type-jobs,
.event-type-maintenance {
    border-color: rgba(34, 197, 94, 0.22);
    background: rgba(34, 197, 94, 0.08);
    color: var(--online);
}

.shared-drawer-panel {
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 10px;
    background: var(--card);
    color: var(--text-secondary);
}

body.page-endpoint-detail .endpoint-detail-shell {
    display: grid;
    gap: 14px;
}

body.page-endpoint-detail .endpoint-ops-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background:
        radial-gradient(circle at 8% 0%, rgba(124, 58, 237, 0.2), transparent 34%),
        linear-gradient(135deg, rgba(17, 19, 34, 0.98), rgba(8, 10, 18, 0.98));
}

body.page-endpoint-detail .endpoint-ops-title,
body.page-endpoint-detail .endpoint-ops-actions,
body.page-endpoint-detail .endpoint-title-line,
body.page-endpoint-detail .endpoint-critical-strip,
body.page-endpoint-detail .endpoint-header-facts,
body.page-endpoint-detail .endpoint-tabs,
body.page-endpoint-detail .endpoint-dense-card header,
body.page-endpoint-detail .endpoint-remote-actions-grid,
body.page-endpoint-detail .software-actions,
body.page-endpoint-detail .endpoint-task-list article,
body.page-endpoint-detail .endpoint-disk-table footer {
    display: flex;
    align-items: center;
}

body.page-endpoint-detail .endpoint-ops-title {
    align-items: flex-start;
    flex-direction: column;
    min-width: 0;
}

body.page-endpoint-detail .endpoint-title-line {
    flex-wrap: wrap;
    gap: 10px;
}

body.page-endpoint-detail .endpoint-title-line h1 {
    margin: 0;
    font-size: 30px;
    line-height: 1;
}

body.page-endpoint-detail .endpoint-critical-strip {
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

body.page-endpoint-detail .endpoint-critical-strip > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 5px 9px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    background: rgba(7, 9, 16, 0.72);
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 800;
}

body.page-endpoint-detail .endpoint-critical-strip svg {
    width: 14px;
    height: 14px;
}

body.page-endpoint-detail .endpoint-ops-actions {
    position: relative;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    max-width: 560px;
}

body.page-endpoint-detail .endpoint-ops-actions .copy-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

body.page-endpoint-detail .endpoint-ops-actions svg {
    width: 15px;
    height: 15px;
}

body.page-endpoint-detail .endpoint-remote-menu {
    position: relative;
}

body.page-endpoint-detail .endpoint-remote-popover {
    position: absolute;
    z-index: 20;
    top: calc(100% + 8px);
    right: 0;
    display: grid;
    min-width: 230px;
    padding: 8px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: #0b0d16;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.42);
}

body.page-endpoint-detail .endpoint-remote-popover[hidden] {
    display: none;
}

body.page-endpoint-detail .endpoint-remote-popover button {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 0 9px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--text-secondary);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

body.page-endpoint-detail .endpoint-remote-popover button:hover {
    background: rgba(124, 58, 237, 0.12);
    color: var(--text-primary);
}

body.page-endpoint-detail .endpoint-header-facts {
    grid-column: 1 / -1;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 2px 0 0;
}

body.page-endpoint-detail .endpoint-header-facts div {
    display: grid;
    gap: 3px;
    min-width: 128px;
    padding: 8px 10px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.46);
}

body.page-endpoint-detail .endpoint-header-facts dt,
body.page-endpoint-detail .endpoint-fact-list dt {
    color: #9fb0c8;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

body.page-endpoint-detail .endpoint-header-facts dd,
body.page-endpoint-detail .endpoint-fact-list dd {
    margin: 0;
    color: #f8fafc;
    font-size: 13px;
    font-weight: 700;
}

body.page-endpoint-detail .endpoint-tabs {
    gap: 6px;
    padding: 5px;
    border: 1px solid var(--border);
    border-radius: 999px;
    overflow-x: auto;
    background: rgba(7, 9, 16, 0.72);
}

body.page-endpoint-detail .endpoint-tabs button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 13px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--text-muted);
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
    cursor: pointer;
}

body.page-endpoint-detail .endpoint-tabs button:hover,
body.page-endpoint-detail .endpoint-tabs button.is-active {
    background: rgba(124, 58, 237, 0.18);
    color: var(--text-primary);
}

body.page-endpoint-detail .endpoint-tabs svg {
    width: 15px;
    height: 15px;
}

body.page-endpoint-detail .endpoint-tab-panel[hidden] {
    display: none;
}

body.page-endpoint-detail .endpoint-compact-grid,
body.page-endpoint-detail .endpoint-inventory-grid,
body.page-endpoint-detail .security-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

body.page-endpoint-detail .endpoint-dense-card {
    min-width: 0;
    margin: 0;
}

body.page-endpoint-detail .endpoint-dense-card header {
    justify-content: space-between;
    gap: 10px;
    padding: 13px 14px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.1);
}

body.page-endpoint-detail .endpoint-dense-card header h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--text-primary);
    font-size: 14px;
}

body.page-endpoint-detail .endpoint-dense-card header h2 svg,
body.page-endpoint-detail .endpoint-dense-card header a svg,
body.page-endpoint-detail .endpoint-remote-actions-grid svg {
    width: 16px;
    height: 16px;
    color: var(--soft-purple);
}

body.page-endpoint-detail .endpoint-dense-card header a,
body.page-endpoint-detail .endpoint-dense-card header button {
    border: 1px solid rgba(167, 139, 250, 0.2);
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.08);
    color: var(--text-secondary);
    text-decoration: none;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

body.page-endpoint-detail .endpoint-dense-card header a,
body.page-endpoint-detail .endpoint-dense-card header button {
    padding: 6px 9px;
}

body.page-endpoint-detail .endpoint-dense-card header a:hover,
body.page-endpoint-detail .endpoint-dense-card header button:hover {
    border-color: rgba(192, 132, 252, 0.38);
    color: var(--text-primary);
}

body.page-endpoint-detail .endpoint-span-2 {
    grid-column: span 2;
}

body.page-endpoint-detail .endpoint-fact-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 14px;
}

body.page-endpoint-detail .endpoint-fact-list div {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 8px;
    background: rgba(7, 9, 16, 0.32);
}

body.page-endpoint-detail .endpoint-fact-list dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-endpoint-detail .endpoint-score-block {
    display: flex;
    align-items: baseline;
    gap: 7px;
    padding: 12px 14px 0;
}

body.page-endpoint-detail .endpoint-score-block strong {
    color: var(--text-primary);
    font-size: 54px;
    line-height: 0.9;
    letter-spacing: -0.04em;
}

body.page-endpoint-detail .endpoint-score-block span {
    color: var(--text-muted);
}

body.page-endpoint-detail .health-breakdown {
    display: grid;
    gap: 9px;
    padding: 0 14px 14px;
}

body.page-endpoint-detail .health-breakdown div {
    display: grid;
    grid-template-columns: 120px 36px 1fr;
    align-items: center;
    gap: 8px;
}

body.page-endpoint-detail .health-breakdown span {
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 700;
}

body.page-endpoint-detail .health-breakdown strong {
    font-size: 12px;
}

body.page-endpoint-detail .health-part-good {
    color: var(--online);
}

body.page-endpoint-detail .health-part-warning {
    color: var(--unknown);
}

body.page-endpoint-detail .health-part-critical {
    color: var(--critical);
}

body.page-endpoint-detail .health-breakdown em {
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.12);
}

body.page-endpoint-detail .health-breakdown i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--owl-purple), var(--glow-purple));
}

body.page-endpoint-detail .muted-inline {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 700;
}

body.page-endpoint-detail .endpoint-mini-disk-list,
body.page-endpoint-detail .endpoint-task-list {
    display: grid;
    gap: 10px;
    padding: 14px;
}

body.page-endpoint-detail .endpoint-mini-disk-list div {
    display: grid;
    grid-template-columns: 52px 46px 1fr;
    align-items: center;
    gap: 8px;
}

body.page-endpoint-detail .endpoint-mini-disk-list em {
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.12);
}

body.page-endpoint-detail .endpoint-mini-disk-list i {
    display: block;
    height: 100%;
    border-radius: inherit;
}

body.page-endpoint-detail .endpoint-mini-disk-list small {
    grid-column: 1 / -1;
    color: var(--text-muted);
    font-size: 11px;
}

body.page-endpoint-detail .endpoint-two-lists {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    padding: 14px;
}

body.page-endpoint-detail .endpoint-two-lists h3 {
    margin: 0 0 8px;
    color: var(--text-secondary);
    font-size: 12px;
    text-transform: uppercase;
}

body.page-endpoint-detail .endpoint-compact-list {
    padding: 0;
}

body.page-endpoint-detail .endpoint-inventory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 14px;
}

body.page-endpoint-detail .endpoint-disk-panel {
    margin-top: 0;
}

body.page-endpoint-detail .endpoint-disk-table {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 12px;
    padding: 14px;
}

body.page-endpoint-detail .endpoint-disk-table .disk-row {
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    background: rgba(7, 9, 16, 0.32);
}

body.page-endpoint-detail .endpoint-disk-table footer {
    flex-wrap: wrap;
    gap: 7px;
    padding-top: 10px;
}

body.page-endpoint-detail .endpoint-disk-table footer button,
body.page-endpoint-detail .endpoint-disk-table footer a,
body.page-endpoint-detail .software-actions button,
body.page-endpoint-detail .endpoint-remote-actions-grid button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 30px;
    padding: 0 9px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.7);
    color: var(--text-secondary);
    text-decoration: none;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

body.page-endpoint-detail .endpoint-disk-table footer button:hover,
body.page-endpoint-detail .endpoint-disk-table footer a:hover,
body.page-endpoint-detail .software-actions button:hover,
body.page-endpoint-detail .endpoint-remote-actions-grid button:hover {
    border-color: rgba(192, 132, 252, 0.38);
    color: var(--text-primary);
}

body.page-endpoint-detail .software-table {
    min-width: 940px;
}

body.page-endpoint-detail .software-actions {
    gap: 6px;
}

body.page-endpoint-detail .security-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-endpoint-detail .endpoint-task-list article {
    gap: 12px;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    background: rgba(7, 9, 16, 0.32);
}

body.page-endpoint-detail .endpoint-task-list strong,
body.page-endpoint-detail .endpoint-task-list p {
    margin: 0;
}

body.page-endpoint-detail .endpoint-task-list strong {
    color: var(--text-primary);
    font-size: 13px;
}

body.page-endpoint-detail .endpoint-task-list p {
    margin-top: 3px;
    color: var(--text-muted);
    font-size: 12px;
}

body.page-endpoint-detail .endpoint-remote-actions-grid {
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 14px 14px;
}

body.page-endpoint-detail .endpoint-inline-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 10px;
    padding: 0 14px 12px;
}

body.page-endpoint-detail .endpoint-inline-metrics div {
    display: grid;
    gap: 4px;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 9px;
    background: rgba(7, 9, 16, 0.34);
}

body.page-endpoint-detail .endpoint-inline-metrics span {
    color: #9fb0c8;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

body.page-endpoint-detail .endpoint-inline-metrics strong {
    color: #f8fafc;
    font-size: 20px;
    line-height: 1;
}

body.page-endpoint-detail .endpoint-empty-state {
    display: grid;
    place-items: center;
    min-height: 150px;
    padding: 18px;
    border: 1px dashed rgba(148, 163, 184, 0.18);
    border-radius: 10px;
    background: rgba(7, 9, 16, 0.26);
    color: var(--text-muted);
    text-align: center;
}

body.page-endpoint-detail .endpoint-empty-state svg {
    width: 28px;
    height: 28px;
    margin-bottom: 8px;
    color: var(--soft-purple);
}

body.page-endpoint-detail .endpoint-empty-state strong {
    color: #f8fafc;
    font-size: 13px;
}

body.page-endpoint-detail .endpoint-empty-state p {
    max-width: 360px;
    margin: 5px auto 0;
    color: #9fb0c8;
    font-size: 12px;
}

body.page-endpoint-detail .endpoint-event-timeline {
    display: grid;
    gap: 10px;
    padding: 14px;
}

body.page-endpoint-detail .endpoint-event-row {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    background: rgba(7, 9, 16, 0.32);
    cursor: pointer;
}

body.page-endpoint-detail .endpoint-event-row:hover {
    border-color: rgba(167, 139, 250, 0.32);
    background: rgba(124, 58, 237, 0.08);
}

body.page-endpoint-detail .endpoint-event-row p,
body.page-endpoint-detail .endpoint-event-row small {
    margin: 4px 0 0;
    color: #9fb0c8;
    font-size: 12px;
}

body.page-endpoint-detail .endpoint-event-row strong {
    color: #f8fafc;
    font-size: 13px;
}

body.page-endpoint-detail .endpoint-job-table {
    min-width: 980px;
}

body.page-endpoint-detail .endpoint-job-table td strong,
body.page-endpoint-detail .software-table td strong {
    color: #f8fafc;
}

body.page-endpoint-detail .endpoint-job-progress {
    width: 86px;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.14);
    border: 1px solid rgba(148, 163, 184, 0.16);
}

body.page-endpoint-detail .endpoint-job-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #38bdf8;
}

body.page-endpoint-detail .endpoint-job-progress-completed span {
    background: #22c55e;
}

body.page-endpoint-detail .endpoint-job-progress-failed span,
body.page-endpoint-detail .endpoint-job-progress-expired span {
    background: #ef4444;
}

body.page-endpoint-detail .endpoint-job-progress-cancelled span {
    background: #94a3b8;
}

body.page-endpoint-detail .endpoint-mini-drawer .endpoint-fact-list {
    grid-template-columns: 1fr;
    padding: 0;
}

body.page-endpoint-detail .endpoint-mini-drawer .endpoint-fact-list div {
    padding: 8px;
}

body.page-endpoint-detail .endpoint-mini-drawer pre {
    max-height: 260px;
}

body.page-endpoint-detail .endpoint-detail-toast {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 80;
}

body.page-endpoint-detail .endpoint-health-pill,
body.page-endpoint-detail .endpoint-attention-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

body.page-endpoint-detail .endpoint-health-pill.health-good {
    color: var(--online);
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
}

body.page-endpoint-detail .endpoint-health-pill.health-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.28);
}

body.page-endpoint-detail .endpoint-health-pill.health-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.28);
}

body.page-endpoint-detail .endpoint-health-pill.health-unknown {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.08);
    border-color: rgba(148, 163, 184, 0.16);
}

body.page-endpoint-detail .endpoint-attention-pill.attention-critical {
    color: var(--critical);
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.24);
}

body.page-endpoint-detail .endpoint-attention-pill.attention-warning {
    color: var(--unknown);
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

body.page-endpoint-detail .endpoint-attention-pill.attention-muted {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.08);
    border-color: rgba(148, 163, 184, 0.14);
}

body.page-endpoint-detail .endpoint-attention-pill.attention-normal {
    color: var(--online);
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.16);
}

@media (max-width: 1180px) {
    body.page-endpoint-detail .endpoint-ops-header,
    body.page-endpoint-detail .endpoint-compact-grid,
    body.page-endpoint-detail .security-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-endpoint-detail .endpoint-ops-actions,
    body.page-endpoint-detail .endpoint-header-facts,
    body.page-endpoint-detail .endpoint-tabs,
    body.page-endpoint-detail .endpoint-ops-title {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    body.page-endpoint-detail .endpoint-ops-header,
    body.page-endpoint-detail .endpoint-compact-grid,
    body.page-endpoint-detail .endpoint-inventory-grid,
    body.page-endpoint-detail .security-grid,
    body.page-endpoint-detail .endpoint-two-lists,
    body.page-endpoint-detail .endpoint-fact-list {
        grid-template-columns: 1fr;
    }

    body.page-endpoint-detail .endpoint-span-2 {
        grid-column: auto;
    }

    body.page-endpoint-detail .endpoint-ops-actions,
    body.page-endpoint-detail .endpoint-dense-card header {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Operational polish shared by NOC, Alerts and Events. */
.ops-chip,
.ops-filter-summary,
.ops-filter-summary a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.ops-chip {
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    background: rgba(6, 7, 13, 0.42);
    color: var(--text-muted);
    font-size: 12px;
    white-space: nowrap;
}

.ops-chip strong {
    color: var(--text-primary);
    font-family: var(--font-mono);
    font-size: 11px;
}

.ops-chip svg {
    width: 14px;
    height: 14px;
    color: var(--module-accent);
}

.ops-chip.has-new {
    border-color: rgba(34, 197, 94, 0.32);
    background: rgba(34, 197, 94, 0.08);
}

.ops-chip .is-stale,
.ops-chip strong.is-stale {
    color: var(--unknown);
}

.ops-command-hint kbd {
    min-width: 22px;
    padding: 2px 6px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.8);
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 10px;
    line-height: 1.4;
    text-align: center;
}

.ops-filter-summary {
    justify-content: space-between;
    gap: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(148, 163, 184, 0.1);
    color: var(--text-muted);
    font-size: 12px;
}

.ops-filter-summary strong {
    color: var(--text-primary);
    font-family: var(--font-mono);
}

.ops-filter-summary svg {
    width: 14px;
    height: 14px;
}

.ops-filter-summary a {
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(167, 139, 250, 0.18);
    border-radius: 8px;
    background: rgba(11, 13, 22, 0.66);
    color: var(--text-secondary);
    font-weight: 800;
}

.ops-filter-summary a:hover {
    border-color: rgba(192, 132, 252, 0.44);
    color: var(--text-primary);
}

.ops-skeleton-row {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr 1fr;
    gap: 10px;
    min-height: 36px;
}

.ops-skeleton-row[hidden] {
    display: none;
}

.ops-skeleton-row span {
    border-radius: 9px;
    background: linear-gradient(90deg, rgba(148, 163, 184, 0.08), rgba(167, 139, 250, 0.16), rgba(148, 163, 184, 0.08));
    background-size: 240% 100%;
    animation: opsSkeleton 1.25s ease-in-out infinite;
}

@keyframes opsSkeleton {
    0% { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}

body.page-noc .noc-list,
.alert-queue,
.event-log-stream {
    scrollbar-color: rgba(167, 139, 250, 0.42) rgba(6, 7, 13, 0.5);
    scrollbar-width: thin;
}

body.page-noc .noc-list {
    max-height: 520px;
    overflow: auto;
    padding-right: 10px;
}

.alert-queue {
    max-height: calc(100vh - 360px);
    min-height: 280px;
    overflow: auto;
    padding-right: 10px;
}

.event-log-stream {
    max-height: calc(100vh - 330px);
    min-height: 320px;
    overflow: auto;
    padding-right: 12px;
}

body.page-noc .noc-kpi,
.command-metric,
.alert-operation-card,
.event-row {
    backdrop-filter: blur(10px);
}

body.page-noc .noc-kpi:hover,
.command-metric:hover {
    border-color: rgba(var(--module-accent-rgb), 0.36);
    transform: translateY(-1px);
}

.severity-border-critical,
.severity-critical {
    --severity-edge: rgba(239, 68, 68, 0.72);
}

.severity-border-warning,
.severity-warning {
    --severity-edge: rgba(245, 158, 11, 0.72);
}

.severity-border-security,
.severity-security {
    --severity-edge: rgba(192, 132, 252, 0.72);
}

.severity-border-success,
.severity-success {
    --severity-edge: rgba(34, 197, 94, 0.64);
}

.severity-border-info,
.severity-info {
    --severity-edge: rgba(56, 189, 248, 0.64);
}

.alert-operation-card,
.event-log-entry {
    border-left-color: var(--severity-edge, rgba(148, 163, 184, 0.32));
}

.alert-status,
.severity-badge,
.event-origin-chip,
.relative-chip {
    letter-spacing: 0.01em;
}

.empty-alert-state {
    border: 1px dashed rgba(148, 163, 184, 0.22);
    background:
        radial-gradient(circle at 50% 0%, rgba(var(--module-accent-rgb), 0.08), transparent 38%),
        rgba(6, 7, 13, 0.28);
}

.alert-action-toast,
.noc-toast {
    border-color: rgba(var(--module-accent-rgb), 0.34);
    background:
        radial-gradient(circle at 10% 0%, rgba(var(--module-accent-rgb), 0.16), transparent 42%),
        rgba(8, 10, 18, 0.96);
}

@media (max-width: 1180px) {
    .ops-command-hint {
        display: none;
    }

    .alert-queue,
    .event-log-stream {
        max-height: none;
    }
}

@media (max-width: 760px) {
    .ops-chip {
        min-height: 28px;
        font-size: 11px;
    }

    .ops-filter-summary {
        align-items: flex-start;
        flex-direction: column;
    }

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

.severity-success {
    color: var(--online);
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.18);
}

.severity-debug {
    color: var(--text-muted);
    background: rgba(148, 163, 184, 0.06);
    border-color: rgba(148, 163, 184, 0.12);
}

.endpoint-timeline-panel {
    margin-bottom: 18px;
}

.endpoint-audit-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.alerts-command-header.page-header,
.noc-hero.page-header,
.endpoint-hero-card.page-header {
    border-color: rgba(var(--module-accent-rgb), 0.2);
    border-top-color: rgba(var(--module-accent-rgb), 0.44);
    background:
        radial-gradient(circle at 0% 0%, rgba(var(--module-accent-rgb), 0.16), transparent 34%),
        linear-gradient(135deg, rgba(17, 19, 34, 0.97), rgba(11, 13, 22, 0.96));
}

.page-header .page-header-icon svg,
.hero.page-header .page-header-icon svg,
.endpoint-hero-card.page-header .page-header-icon svg,
.alerts-command-header.page-header .page-header-icon svg,
.noc-hero.page-header .page-header-icon svg {
    width: 18px;
    height: 18px;
    color: currentColor;
}

.alerts-command-title h1::after,
.noc-hero h1::after,
.detail-title-row h1::after {
    background: linear-gradient(90deg, var(--module-accent), var(--module-accent-soft), transparent);
}

.page-header .refresh-button,
.page-header .copy-btn,
.page-header .link-btn,
.page-header .auto-refresh-chip,
.page-header .noc-refresh-chip {
    border-color: rgba(var(--module-accent-rgb), 0.3);
}

.page-header .refresh-button:hover,
.page-header .copy-btn:hover,
.page-header .link-btn:hover,
.page-header .auto-refresh-chip:hover,
.page-header .noc-refresh-chip:hover {
    border-color: rgba(var(--module-accent-rgb), 0.5);
}

.page-header + .metric-grid .metric-card,
.page-header + .noc-kpi-grid .noc-kpi {
    border-top-color: rgba(var(--module-accent-rgb), 0.3);
}

.filter-panel,
.command-filter-panel,
.software-filter-panel {
    border-top-color: rgba(var(--module-accent-rgb), 0.26);
}

.endpoint-filters.software-policy-filters {
    grid-template-columns: minmax(260px, 2fr) repeat(3, minmax(140px, 1fr));
}

.endpoint-filters.software-policy-filters .policy-check-filter,
.endpoint-filters.software-policy-filters .filter-actions {
    grid-column: span 2;
}

.content-panel,
.action-panel,
.timeline-panel,
.doc-panel {
    border-top-color: rgba(var(--module-accent-rgb), 0.26);
}

@media (max-width: 980px) {
    .app-shell {
        grid-template-columns: 1fr;
    }

    .sidebar {
        position: static;
        height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--border);
    }

    .nav-menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-items: start;
    }

    .nav-group {
        min-width: 0;
    }

    .metric-grid,
    .dashboard-metrics,
    .dashboard-grid,
    .detail-summary-grid,
    .detail-grid,
    .endpoint-overview-grid,
    .endpoint-metrics,
    .endpoint-filters,
    .alerts-command-metrics,
    .alerts-command-grid,
    .noc-kpi-grid,
    .noc-grid,
    .noc-timeline,
    .events-metrics,
    .events-filters,
    .endpoint-audit-timeline,
    .agent-detail-grid {
        grid-template-columns: 1fr 1fr;
    }

    .endpoints-panel {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .topbar,
    .content {
        padding-left: 18px;
        padding-right: 18px;
    }

    .hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .alerts-command-header,
    .alerts-header-actions,
    .noc-hero,
    .noc-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .hero h1 {
        font-size: 28px;
    }

    .metric-grid,
    .dashboard-metrics,
    .dashboard-grid,
    .detail-summary-grid,
    .detail-grid,
    .endpoint-overview-grid,
    .endpoint-metrics,
    .endpoint-filters,
    .alerts-filters,
    .alerts-metrics,
    .alerts-command-metrics,
    .alerts-command-filters,
    .alerts-command-grid,
    .noc-kpi-grid,
    .noc-grid,
    .noc-timeline,
    .events-metrics,
    .events-filters,
    .endpoint-audit-timeline,
    .agent-detail-grid,
    .nav-menu,
    .nav-group {
        grid-template-columns: 1fr;
    }

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

    .noc-disk-row,
    .noc-endpoint-row {
        grid-template-columns: 1fr;
    }

    .noc-footer {
        flex-direction: column;
    }

    .endpoint-hero-card {
        flex-direction: column;
    }

    .endpoint-hero-actions {
        justify-content: flex-start;
        min-width: 0;
    }

    .panel-header,
    .disk-row-header,
    .disk-meta {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Night Owl Desk final identity overrides */
body.page-tickets .content {
    background: #050609;
}

body.page-tickets .desk-hero.page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-color: #1f2937;
    border-top-color: rgba(34, 197, 94, 0.36);
    background:
        radial-gradient(circle at 12% 0%, rgba(34, 197, 94, 0.08), transparent 34%),
        linear-gradient(135deg, rgba(17, 24, 39, 0.98), rgba(8, 11, 16, 0.98)),
        #0d1117;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
    min-height: 0;
    margin-bottom: 14px;
    padding: 14px 16px;
}

body.page-tickets .desk-hero.page-header::before {
    background: linear-gradient(90deg, #22c55e, #86efac, transparent);
}

body.page-tickets .desk-hero .page-header-icon {
    background:
        radial-gradient(circle at 50% 20%, rgba(34, 197, 94, 0.14), transparent 42%),
        #111827;
    border-color: rgba(34, 197, 94, 0.34);
    box-shadow: 0 0 24px rgba(34, 197, 94, 0.08);
    color: #86efac;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 10px;
}

body.page-tickets .desk-hero .page-header-icon svg {
    width: 18px;
    height: 18px;
}

body.page-tickets .desk-hero .desk-kicker {
    font-size: 10px;
    margin-bottom: 3px;
}

body.page-tickets .desk-hero .page-title {
    font-size: 22px;
    line-height: 1.12;
    margin: 0;
}

body.page-tickets .desk-hero .page-subtitle {
    font-size: 13px;
    line-height: 1.35;
    margin: 6px 0 0;
}

body.page-tickets .desk-hero .page-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-left: auto;
}

body.page-tickets .desk-panel,
body.page-tickets .desk-ticket-card,
body.page-tickets .desk-form-panel {
    background: #0d1117;
    border-color: #1f2937;
}

body.page-tickets .desk-ticket-card:hover,
body.page-tickets .desk-panel:hover {
    background: #10251d;
    border-color: rgba(34, 197, 94, 0.42);
}

@media (max-width: 760px) {
    body.page-tickets .desk-hero.page-header {
        align-items: flex-start;
        flex-direction: column;
    }

    body.page-tickets .desk-hero .page-actions {
        justify-content: flex-start;
        margin-left: 0;
    }
}

/* Access Inventory blue identity */
body.page-access-inventory {
    --ai-bg: #05070c;
    --ai-card: #0d1320;
    --ai-card-hover: #101b2c;
    --ai-border: #1d2a3d;
    --ai-border-strong: rgba(56, 189, 248, 0.38);
    --ai-blue: #38bdf8;
    --ai-blue-soft: #7dd3fc;
    --ai-blue-deep: #0284c7;
    --ai-text: #f8fafc;
    --ai-muted: #94a3b8;
    --ai-subtle: #cbd5e1;
    background: var(--ai-bg);
    color: var(--ai-subtle);
}

body.page-access-inventory .content {
    background:
        radial-gradient(circle at 8% 0%, rgba(56, 189, 248, 0.08), transparent 28%),
        var(--ai-bg);
}

body.page-access-inventory .app-shell {
    grid-template-columns: minmax(0, 1fr);
}

body.page-access-inventory .sidebar {
    background: #05070c;
    border-right-color: var(--ai-border);
}

body.page-access-inventory .brand {
    border-bottom: 1px solid var(--ai-border);
    margin-bottom: 18px;
    padding-bottom: 20px;
}

body.page-access-inventory .brand-logo {
    background:
        radial-gradient(circle at 50% 22%, rgba(56, 189, 248, 0.16), transparent 38%),
        linear-gradient(145deg, #111827, #070b12);
    border-color: rgba(56, 189, 248, 0.34);
    box-shadow: 0 0 22px rgba(56, 189, 248, 0.1);
    color: var(--ai-blue-soft);
}

body.page-access-inventory .nav-item:hover {
    background: var(--ai-card);
    border-color: rgba(56, 189, 248, 0.22);
    color: var(--ai-text);
}

body.page-access-inventory .nav-item.active {
    background:
        linear-gradient(90deg, rgba(56, 189, 248, 0.14), rgba(13, 19, 32, 0.96)),
        var(--ai-card);
    border-color: rgba(56, 189, 248, 0.38);
    box-shadow: inset 3px 0 0 var(--ai-blue);
    color: var(--ai-text);
}

body.page-access-inventory .nav-item.active svg,
body.page-access-inventory .topbar-status svg {
    color: var(--ai-blue-soft);
}

body.page-access-inventory .topbar {
    background: rgba(5, 7, 12, 0.9);
    border-bottom: 1px solid var(--ai-border);
    backdrop-filter: blur(18px);
}

body.page-access-inventory .topbar-status {
    background: var(--ai-card);
    border-color: var(--ai-border);
    color: var(--ai-subtle);
}

.ai-shell {
    display: grid;
    gap: 14px;
}

.ai-hero {
    align-items: center;
    background:
        radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.12), transparent 34%),
        linear-gradient(135deg, rgba(15, 23, 42, 0.98), rgba(5, 10, 18, 0.98)),
        var(--ai-card);
    border-color: var(--ai-border);
    border-top-color: rgba(56, 189, 248, 0.42);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.18);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 0;
    min-height: 0;
    padding: 12px 14px;
}

body.page-access-inventory .ai-hero.page-header::before {
    background: linear-gradient(90deg, var(--ai-blue), var(--ai-blue-soft), transparent);
}

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

.ai-hero-icon {
    align-items: center;
    background:
        radial-gradient(circle at 50% 20%, rgba(56, 189, 248, 0.16), transparent 42%),
        #111827;
    border: 1px solid rgba(56, 189, 248, 0.34);
    border-radius: 9px;
    box-shadow: 0 0 18px rgba(56, 189, 248, 0.1);
    color: var(--ai-blue-soft);
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.ai-hero-icon svg,
.ai-hero-chip svg,
.ai-module-nav svg,
.ai-panel h2 svg,
.ai-metric svg,
.ai-object-card svg {
    height: 18px;
    width: 18px;
}

.ai-kicker {
    color: var(--ai-blue-soft);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0;
    margin: 0 0 3px;
    text-transform: uppercase;
}

body.page-access-inventory .page-title {
    color: var(--ai-text);
    font-size: 21px;
    line-height: 1.12;
    margin: 0;
}

body.page-access-inventory .page-subtitle {
    color: var(--ai-muted);
    font-size: 13px;
    line-height: 1.35;
    margin: 5px 0 0;
}

.ai-hero-chip,
.ai-btn,
.ai-filter-bar button,
.ai-search button {
    align-items: center;
    border-radius: 10px;
    display: inline-flex;
    font-size: 12px;
    font-weight: 900;
    gap: 8px;
    justify-content: center;
    min-height: 32px;
    padding: 0 10px;
    text-decoration: none;
}

.ai-hero-chip,
.ai-btn {
    background: #08111d;
    border: 1px solid rgba(56, 189, 248, 0.22);
    color: var(--ai-subtle);
}

.ai-filter-bar button,
.ai-search button {
    background: linear-gradient(135deg, var(--ai-blue), var(--ai-blue-deep));
    border: 0;
    color: #041019;
    cursor: pointer;
}

.ai-module-nav {
    align-items: center;
    background: #070d15;
    border: 1px solid var(--ai-border);
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
}

.ai-module-nav a {
    align-items: center;
    border-radius: 10px;
    color: var(--ai-muted);
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    gap: 8px;
    padding: 10px 12px;
    text-decoration: none;
}

.ai-module-nav a.active,
.ai-module-nav a:hover {
    background: rgba(56, 189, 248, 0.1);
    box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.18);
    color: var(--ai-text);
}

.ai-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-metric,
.ai-panel,
.ai-explorer-card,
.ai-object-card {
    background: var(--ai-card);
    border: 1px solid var(--ai-border);
    border-radius: 14px;
}

.ai-metric {
    display: grid;
    gap: 8px;
    min-height: 112px;
    padding: 16px;
}

.ai-metric:hover,
.ai-panel:hover,
.ai-object-card:hover {
    background: var(--ai-card-hover);
    border-color: var(--ai-border-strong);
}

.ai-metric svg,
.ai-panel h2 svg,
.ai-object-card svg {
    color: var(--ai-blue-soft);
}

.ai-metric strong {
    color: var(--ai-blue-soft);
    font-size: 26px;
    line-height: 1;
    overflow-wrap: anywhere;
}

.ai-metric span,
.ai-note,
.ai-subtext,
.ai-muted {
    color: var(--ai-muted);
}

.ai-warning strong,
.ai-warning svg {
    color: #fbbf24;
}

.ai-explorer-card {
    align-items: center;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.8fr);
    padding: 18px;
}

.ai-explorer-card h2,
.ai-panel h2 {
    align-items: center;
    color: var(--ai-text);
    display: flex;
    font-size: 16px;
    gap: 8px;
    margin: 0 0 12px;
}

.ai-explorer-card p {
    color: var(--ai-muted);
    line-height: 1.55;
    margin: 0;
}

.ai-search,
.ai-filter-bar {
    align-items: end;
    display: grid;
    gap: 12px;
}

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

.ai-filter-bar {
    grid-template-columns: minmax(260px, 1fr) auto auto;
}

.ai-filter-bar label,
.ai-filter-bar > div {
    display: grid;
    gap: 7px;
}

.ai-filter-bar span {
    color: var(--ai-muted);
    font-size: 12px;
    font-weight: 900;
}

.ai-search input,
.ai-filter-bar input {
    background: #070d15;
    border: 1px solid #223249;
    border-radius: 10px;
    color: var(--ai-text);
    min-height: 42px;
    padding: 0 12px;
}

.ai-search input:focus,
.ai-filter-bar input:focus {
    border-color: rgba(56, 189, 248, 0.62);
    box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.12);
    outline: none;
}

.ai-segmented {
    background: #070d15;
    border: 1px solid #223249;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 4px;
}

.ai-segmented button {
    background: transparent;
    border: 0;
    color: var(--ai-muted);
    min-height: 32px;
    padding: 0 10px;
}

.ai-segmented button.active,
.ai-segmented button:hover {
    background: rgba(56, 189, 248, 0.12);
    color: var(--ai-text);
}

.ai-card-grid,
.ai-grid-2,
.ai-grid-3,
.ai-investigation-grid {
    display: grid;
    gap: 14px;
}

.ai-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-investigation-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.ai-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-object-card {
    color: var(--ai-subtle);
    display: grid;
    gap: 10px;
    min-height: 150px;
    padding: 18px;
    text-decoration: none;
}

.ai-investigation-card {
    background:
        radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.1), transparent 34%),
        var(--ai-card);
    border: 1px solid var(--ai-border);
    border-radius: 14px;
    color: var(--ai-subtle);
    display: grid;
    gap: 10px;
    min-height: 176px;
    padding: 18px;
    text-decoration: none;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.ai-investigation-card:hover {
    background: var(--ai-card-hover);
    border-color: var(--ai-border-strong);
    transform: translateY(-1px);
}

.ai-investigation-card > svg {
    color: var(--ai-blue-soft);
    height: 24px;
    width: 24px;
}

.ai-investigation-card strong {
    color: var(--ai-text);
    font-size: 16px;
    line-height: 1.25;
}

.ai-investigation-card em {
    color: var(--ai-muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.ai-object-card strong {
    color: var(--ai-text);
    font-size: 16px;
}

.ai-object-card span {
    color: var(--ai-muted);
    line-height: 1.5;
}

.ai-panel {
    padding: 18px;
}

.ai-object-header {
    align-items: center;
    background:
        linear-gradient(135deg, rgba(13, 19, 32, 0.98), rgba(7, 13, 21, 0.98)),
        var(--ai-card);
    border: 1px solid var(--ai-border);
    border-left: 3px solid var(--ai-blue);
    border-radius: 14px;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    padding: 16px;
}

.ai-object-header h2 {
    color: var(--ai-text);
    font-size: 20px;
    margin: 4px 0 6px;
    overflow-wrap: anywhere;
}

.ai-object-header p {
    color: var(--ai-muted);
    font-size: 13px;
    margin: 0;
    overflow-wrap: anywhere;
}

.ai-object-type {
    color: var(--ai-blue-soft);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.ai-object-badges {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.ai-stat-list,
.ai-data-list {
    display: grid;
    gap: 10px;
    margin: 0;
}

.ai-stat-list div,
.ai-data-list div {
    align-items: center;
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    padding: 12px;
}

.ai-data-list dt,
.ai-stat-list span {
    color: var(--ai-muted);
    font-size: 12px;
    font-weight: 800;
}

.ai-data-list dd,
.ai-stat-list strong {
    color: var(--ai-text);
    font-weight: 900;
    margin: 0;
    text-align: right;
    overflow-wrap: anywhere;
}

.ai-mini-list {
    display: grid;
    gap: 10px;
}

.ai-mini-list a,
.ai-list-row {
    align-items: center;
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 12px;
    color: var(--ai-subtle);
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) minmax(120px, auto);
    padding: 12px;
    text-decoration: none;
}

.ai-mini-list a:hover {
    border-color: var(--ai-border-strong);
}

.ai-mini-list strong,
.ai-list-row strong {
    color: var(--ai-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-mini-list em,
.ai-list-row em {
    color: var(--ai-muted);
    font-size: 12px;
    font-style: normal;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-result-list {
    display: grid;
    gap: 10px;
}

.ai-result-item {
    align-items: center;
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 12px;
    color: var(--ai-subtle);
    display: grid;
    gap: 12px;
    grid-template-columns: 36px auto minmax(0, 1fr) minmax(180px, 0.8fr);
    padding: 12px;
    text-decoration: none;
}

.ai-result-item:hover {
    border-color: var(--ai-border-strong);
    background: rgba(56, 189, 248, 0.05);
}

.ai-result-icon {
    align-items: center;
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.22);
    border-radius: 10px;
    color: var(--ai-blue-soft);
    display: inline-flex;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.ai-result-icon svg {
    height: 18px;
    width: 18px;
}

.ai-result-item strong {
    color: var(--ai-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-result-item em {
    color: var(--ai-muted);
    font-size: 12px;
    font-style: normal;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-group-access-list {
    display: grid;
    gap: 12px;
}

.ai-group-access-card {
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 12px;
    display: grid;
    gap: 12px;
    padding: 14px;
}

.ai-group-access-card header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.ai-group-access-card header div,
.ai-chip-list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ai-chip {
    background: rgba(56, 189, 248, 0.09);
    border: 1px solid rgba(56, 189, 248, 0.2);
    border-radius: 999px;
    color: var(--ai-blue-soft);
    font-size: 12px;
    font-weight: 800;
    padding: 6px 9px;
    text-decoration: none;
}

.ai-chip:hover {
    border-color: rgba(56, 189, 248, 0.4);
    color: var(--ai-text);
}

.ai-chip-muted {
    background: rgba(148, 163, 184, 0.08);
    border-color: rgba(148, 163, 184, 0.18);
    color: var(--ai-muted);
}

.ai-access-line-list,
.ai-compact-list {
    display: grid;
    gap: 8px;
}

.ai-access-line {
    align-items: center;
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(150px, 0.75fr) minmax(220px, 1.2fr) minmax(150px, 0.85fr) auto auto;
    min-height: 46px;
    padding: 9px 11px;
}

.ai-access-line:hover {
    background: rgba(56, 189, 248, 0.04);
    border-color: var(--ai-border-strong);
}

.ai-access-group,
.ai-access-folder {
    color: var(--ai-blue-soft);
    font-weight: 900;
    overflow: hidden;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-access-folder {
    color: var(--ai-text);
}

.ai-access-group:hover,
.ai-access-folder:hover {
    text-decoration: underline;
}

.ai-access-rights {
    color: var(--ai-subtle);
    font-size: 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-compact-panel {
    background: rgba(13, 19, 32, 0.72);
}

.ai-compact-panel h2 {
    font-size: 15px;
}

.ai-secondary-grid {
    align-items: start;
}

.ai-compact-list a {
    align-items: center;
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    color: var(--ai-subtle);
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) minmax(120px, auto);
    min-height: 42px;
    padding: 8px 10px;
    text-decoration: none;
}

.ai-compact-list a:hover {
    border-color: var(--ai-border-strong);
}

.ai-compact-list strong,
.ai-compact-list em {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-compact-list strong {
    color: var(--ai-text);
}

.ai-compact-list em {
    color: var(--ai-muted);
    font-size: 12px;
    font-style: normal;
    text-align: right;
}

.ai-data-list-compact div {
    padding: 9px 10px;
}

.ai-table-wrap {
    overflow-x: auto;
}

.ai-table {
    border-collapse: collapse;
    min-width: 920px;
    width: 100%;
}

.ai-table th,
.ai-table td {
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    padding: 12px;
    text-align: left;
    vertical-align: top;
}

.ai-table th {
    color: var(--ai-muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.ai-table td {
    color: var(--ai-subtle);
    font-size: 13px;
}

.ai-table tr:hover td {
    background: rgba(56, 189, 248, 0.04);
}

.ai-row-warning td {
    background: rgba(245, 158, 11, 0.04);
}

.ai-link {
    color: var(--ai-blue-soft);
    font-weight: 900;
    text-decoration: none;
}

.ai-link:hover {
    color: var(--ai-text);
    text-decoration: underline;
}

.ai-subtext {
    display: block;
    font-size: 11px;
    margin-top: 4px;
    overflow-wrap: anywhere;
}

.ai-badge {
    align-items: center;
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.24);
    border-radius: 999px;
    color: var(--ai-blue-soft);
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    min-height: 24px;
    padding: 0 9px;
    text-transform: uppercase;
    white-space: nowrap;
}

.ai-badge-user,
.ai-badge-group,
.ai-badge-folder,
.ai-badge-server,
.ai-badge-ou,
.ai-badge-allow,
.ai-badge-enabled {
    background: rgba(56, 189, 248, 0.1);
    border-color: rgba(56, 189, 248, 0.24);
    color: var(--ai-blue-soft);
}

.ai-badge-deny {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.24);
    color: #fecaca;
}

.ai-badge-unknown,
.ai-badge-disabled {
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.24);
    color: #fbbf24;
}

.ai-badge-inherited {
    background: rgba(148, 163, 184, 0.09);
    border-color: rgba(148, 163, 184, 0.22);
    color: #cbd5e1;
}

.ai-badge-explicit {
    background: rgba(56, 189, 248, 0.12);
    border-color: rgba(56, 189, 248, 0.28);
    color: var(--ai-blue-soft);
}

.ai-empty {
    color: var(--ai-muted);
    padding: 16px;
}

.ai-empty-large {
    align-items: center;
    border: 1px dashed rgba(56, 189, 248, 0.24);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    justify-items: center;
    padding: 40px 20px;
    text-align: center;
}

.ai-empty-large svg {
    color: var(--ai-blue-soft);
    height: 34px;
    width: 34px;
}

.ai-empty-large strong {
    color: var(--ai-text);
}

.ai-alert-panel {
    border-color: rgba(245, 158, 11, 0.24);
}

.ai-filter-bar-wide {
    grid-template-columns: minmax(260px, 1fr) minmax(320px, auto);
}

.ai-pagination {
    align-items: center;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    margin-top: 14px;
    padding-top: 14px;
}

.ai-pagination a,
.ai-pagination span,
.ai-pagination strong {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    color: var(--ai-muted);
    font-size: 12px;
    font-weight: 800;
    padding: 7px 10px;
    text-decoration: none;
}

.ai-pagination a {
    color: var(--ai-blue-soft);
}

.ai-pagination a:hover {
    border-color: var(--ai-border-strong);
    color: var(--ai-text);
}

/* Access Inventory readability refinement */
body.page-access-inventory {
    --ai-primary-text: #f8fafc;
    --ai-secondary-text: #9fb1c7;
    --ai-tertiary-text: #7f93ad;
    --ai-accent-muted: #7dd3fc;
    --ai-row-hover: rgba(15, 23, 42, 0.72);
}

body.page-access-inventory .ai-link,
body.page-access-inventory .ai-mini-list strong,
body.page-access-inventory .ai-list-row strong,
body.page-access-inventory .ai-result-item strong,
body.page-access-inventory .ai-access-folder,
body.page-access-inventory .ai-compact-list strong,
body.page-access-inventory .ai-table td strong,
body.page-access-inventory .ai-table .ai-link {
    color: var(--ai-primary-text);
    font-size: 0.95rem;
    font-weight: 750;
    line-height: 1.35;
}

body.page-access-inventory .ai-link:hover,
body.page-access-inventory .ai-table .ai-link:hover,
body.page-access-inventory .ai-mini-list a:hover strong,
body.page-access-inventory .ai-result-item:hover strong,
body.page-access-inventory .ai-compact-list a:hover strong,
body.page-access-inventory .ai-access-folder:hover {
    color: var(--ai-accent-muted);
    text-decoration: none;
}

body.page-access-inventory .ai-access-group {
    color: #dbeafe;
    font-size: 0.9rem;
    font-weight: 750;
}

body.page-access-inventory .ai-access-group:hover {
    color: var(--ai-accent-muted);
    text-decoration: none;
}

body.page-access-inventory .ai-subtext,
body.page-access-inventory .ai-muted,
body.page-access-inventory .ai-mini-list em,
body.page-access-inventory .ai-list-row em,
body.page-access-inventory .ai-result-item em,
body.page-access-inventory .ai-access-rights,
body.page-access-inventory .ai-compact-list em,
body.page-access-inventory .ai-table td,
body.page-access-inventory .ai-data-list dt,
body.page-access-inventory .ai-stat-list span {
    color: var(--ai-secondary-text);
}

body.page-access-inventory .ai-subtext,
body.page-access-inventory .ai-table .mono,
body.page-access-inventory .ai-data-list .mono {
    color: var(--ai-tertiary-text);
    font-size: 0.76rem;
    font-weight: 500;
}

body.page-access-inventory .ai-table th {
    color: var(--ai-tertiary-text);
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-access-inventory .ai-table td {
    font-size: 0.9rem;
    line-height: 1.45;
    padding-bottom: 15px;
    padding-top: 15px;
}

body.page-access-inventory .ai-table tr:hover td {
    background: var(--ai-row-hover);
    box-shadow: none;
}

body.page-access-inventory .ai-mini-list a,
body.page-access-inventory .ai-list-row,
body.page-access-inventory .ai-result-item,
body.page-access-inventory .ai-access-line,
body.page-access-inventory .ai-compact-list a,
body.page-access-inventory .ai-group-access-card {
    border-color: rgba(148, 163, 184, 0.11);
}

body.page-access-inventory .ai-mini-list a,
body.page-access-inventory .ai-list-row,
body.page-access-inventory .ai-result-item {
    padding-bottom: 14px;
    padding-top: 14px;
}

body.page-access-inventory .ai-mini-list a:hover,
body.page-access-inventory .ai-result-item:hover,
body.page-access-inventory .ai-compact-list a:hover,
body.page-access-inventory .ai-access-line:hover {
    background: var(--ai-row-hover);
    border-color: rgba(56, 189, 248, 0.2);
    box-shadow: none;
}

body.page-access-inventory .ai-table {
    border-spacing: 0;
}

body.page-access-inventory .ai-table th,
body.page-access-inventory .ai-table td {
    border-left: 0;
    border-right: 0;
    box-shadow: none;
}

body.page-access-inventory .ai-table th + th,
body.page-access-inventory .ai-table td + td {
    border-left: 0;
}

body.page-access-inventory .ai-result-item,
body.page-access-inventory .ai-mini-list a,
body.page-access-inventory .ai-list-row,
body.page-access-inventory .ai-access-line,
body.page-access-inventory .ai-compact-list a {
    box-shadow: none;
}

body.page-access-inventory .ai-result-icon {
    background: rgba(56, 189, 248, 0.07);
    border-color: rgba(56, 189, 248, 0.16);
    color: #bae6fd;
}

body.page-access-inventory .ai-badge {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(125, 211, 252, 0.18);
    color: #dbeafe;
    font-size: 0.67rem;
    font-weight: 800;
    min-height: 22px;
    padding: 0 8px;
}

body.page-access-inventory .ai-badge-user,
body.page-access-inventory .ai-badge-group,
body.page-access-inventory .ai-badge-folder,
body.page-access-inventory .ai-badge-server,
body.page-access-inventory .ai-badge-ou,
body.page-access-inventory .ai-badge-allow,
body.page-access-inventory .ai-badge-enabled {
    background: rgba(14, 116, 144, 0.12);
    border-color: rgba(125, 211, 252, 0.18);
    color: #bfdbfe;
}

body.page-access-inventory .ai-badge-deny {
    background: rgba(127, 29, 29, 0.18);
    border-color: rgba(248, 113, 113, 0.2);
    color: #fecaca;
}

body.page-access-inventory .ai-badge-unknown,
body.page-access-inventory .ai-badge-disabled {
    background: rgba(120, 53, 15, 0.18);
    border-color: rgba(251, 191, 36, 0.2);
    color: #fde68a;
}

body.page-access-inventory .ai-badge-inherited {
    background: rgba(51, 65, 85, 0.22);
    border-color: rgba(148, 163, 184, 0.18);
    color: #cbd5e1;
}

body.page-access-inventory .ai-badge-explicit {
    background: rgba(14, 116, 144, 0.13);
    border-color: rgba(125, 211, 252, 0.2);
    color: #dbeafe;
}

body.page-access-inventory .ai-row-warning td {
    background: rgba(120, 53, 15, 0.06);
}

body.page-access-inventory .ai-pagination a {
    color: #dbeafe;
}

body.page-access-inventory .ai-pagination a:hover {
    color: var(--ai-accent-muted);
}

.ai-review-intro,
.ai-review-executive-note {
    align-items: center;
    background:
        radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.08), transparent 34%),
        var(--ai-card);
    border: 1px solid var(--ai-border);
    border-radius: 14px;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 18px;
}

.ai-review-intro h2,
.ai-review-executive-note strong {
    color: var(--ai-primary-text);
    display: block;
    font-size: 1.1rem;
    margin: 0 0 6px;
}

.ai-review-intro p,
.ai-review-executive-note p {
    color: var(--ai-secondary-text);
    line-height: 1.55;
    margin: 0;
}

.ai-review-executive-note {
    justify-content: flex-start;
}

.ai-review-executive-note > svg {
    color: var(--ai-accent-muted);
    flex: 0 0 auto;
    height: 28px;
    width: 28px;
}

.ai-review-plan-grid,
.ai-review-area-grid,
.ai-review-folder-grid,
.ai-review-rule-grid,
.ai-review-compare-grid {
    display: grid;
    gap: 14px;
}

.ai-review-plan-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-review-area-grid,
.ai-review-folder-grid,
.ai-review-rule-grid,
.ai-review-compare-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-review-plan-card,
.ai-review-area-card,
.ai-review-folder-card,
.ai-review-rule-card,
.ai-review-compare-grid article,
.ai-review-context article {
    background: #070d15;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 14px;
}

.ai-review-plan-card,
.ai-review-folder-card,
.ai-review-rule-card,
.ai-review-compare-grid article {
    display: grid;
    gap: 12px;
    padding: 16px;
}

.ai-review-plan-card header,
.ai-review-rule-card header {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.ai-review-plan-card small,
.ai-review-rule-card small {
    color: var(--ai-tertiary-text);
    font-size: 0.75rem;
}

.ai-review-plan-card h2,
.ai-review-folder-card h3,
.ai-review-rule-card h3,
.ai-review-area-card h3 {
    color: var(--ai-primary-text);
    font-size: 1rem;
    line-height: 1.3;
    margin: 0;
}

.ai-review-plan-card p,
.ai-review-folder-card p,
.ai-review-rule-card p,
.ai-review-compare-grid p {
    color: var(--ai-secondary-text);
    line-height: 1.5;
    margin: 0;
}

.ai-review-card-metrics {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-review-card-metrics span,
.ai-review-folder-card div,
.ai-review-area-card span,
.ai-review-context span {
    color: var(--ai-secondary-text);
    font-size: 0.82rem;
}

.ai-review-card-metrics strong,
.ai-review-folder-card strong,
.ai-review-area-card strong,
.ai-review-context strong {
    color: var(--ai-primary-text);
    font-size: 1.2rem;
}

.ai-review-action,
.ai-review-folder-card a {
    align-items: center;
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(125, 211, 252, 0.18);
    border-radius: 10px;
    color: var(--ai-primary-text);
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    min-height: 38px;
    padding: 0 12px;
    text-decoration: none;
}

.ai-review-action:hover,
.ai-review-folder-card a:hover {
    border-color: rgba(125, 211, 252, 0.34);
    color: var(--ai-accent-muted);
}

.ai-review-context {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-review-context article {
    display: grid;
    gap: 6px;
    padding: 14px;
}

.ai-review-area-card {
    display: grid;
    gap: 12px;
    padding: 14px;
}

.ai-review-area-card div {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-review-folder-card .mono {
    color: var(--ai-tertiary-text);
    font-size: 0.78rem;
}

.ai-permission-chip {
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 900;
    min-height: 24px;
    padding: 0 9px;
    text-transform: uppercase;
}

.ai-permission-ro {
    background: rgba(59, 130, 246, 0.12);
    border: 1px solid rgba(147, 197, 253, 0.22);
    color: #bfdbfe;
}

.ai-permission-rw {
    background: rgba(14, 165, 233, 0.13);
    border: 1px solid rgba(125, 211, 252, 0.24);
    color: #dbeafe;
}

.ai-permission-full,
.ai-permission-custom {
    background: rgba(245, 158, 11, 0.13);
    border: 1px solid rgba(251, 191, 36, 0.22);
    color: #fde68a;
}

.ai-permission-none {
    background: rgba(51, 65, 85, 0.24);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: #cbd5e1;
}

.ai-review-compare-grid article span {
    color: var(--ai-accent-muted);
    font-size: 0.75rem;
    font-weight: 900;
    text-transform: uppercase;
}

.ai-review-compare-grid article strong {
    color: var(--ai-primary-text);
}

.ai-change-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.ai-change-keep,
.ai-change-add {
    border-color: rgba(125, 211, 252, 0.22) !important;
}

.ai-change-remove {
    border-color: rgba(248, 113, 113, 0.22) !important;
    color: #fecaca !important;
}

.ai-change-reduce,
.ai-change-expand,
.ai-change-change {
    border-color: rgba(251, 191, 36, 0.22) !important;
    color: #fde68a !important;
}

.ai-review-plan-hero {
    margin-bottom: 14px;
}

.ai-review-plan-summary {
    display: grid;
    gap: 10px;
}

.ai-review-plan-summary h2,
.ai-review-areas-panel h2,
.ai-review-structure-panel h2 {
    color: var(--ai-primary-text);
    font-size: 1.02rem;
    margin: 0;
}

.ai-review-plan-summary p,
.ai-review-structure-panel .ai-section-heading p {
    color: var(--ai-secondary-text);
    line-height: 1.6;
    margin: 0;
    max-width: 980px;
}

.ai-review-inline-stats {
    align-items: center;
    color: var(--ai-tertiary-text);
    display: flex;
    flex-wrap: wrap;
    font-size: 0.82rem;
    gap: 8px 0;
    margin-top: 4px;
}

.ai-review-inline-stats span {
    align-items: center;
    display: inline-flex;
}

.ai-review-inline-stats span:not(:last-child)::after {
    color: rgba(148, 163, 184, 0.42);
    content: "\00b7";
    margin: 0 10px;
}

.ai-review-empty-note {
    background: rgba(15, 23, 42, 0.42);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 10px;
    color: var(--ai-secondary-text);
    font-size: 0.88rem;
    margin-top: 4px;
    padding: 10px 12px;
}

.ai-review-executive-note-plain {
    background: rgba(7, 13, 21, 0.72);
    border-color: rgba(148, 163, 184, 0.12);
}

.ai-review-area-strip {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.ai-review-area-strip article {
    align-items: center;
    background: rgba(2, 6, 12, 0.24);
    border: 1px solid rgba(148, 163, 184, 0.08);
    border-radius: 10px;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 11px 13px;
}

.ai-review-area-strip strong {
    color: var(--ai-primary-text);
}

.ai-review-area-strip span {
    color: var(--ai-tertiary-text);
    font-size: 0.82rem;
}

.ai-review-structure-panel .ai-section-heading {
    margin-bottom: 14px;
}

.ai-review-folder-tree {
    display: grid;
    gap: 18px;
}

.ai-review-folder-area {
    display: grid;
    gap: 9px;
}

.ai-review-folder-area h3 {
    color: var(--ai-secondary-text);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    margin: 0;
    text-transform: uppercase;
}

.ai-review-folder-lines {
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    overflow: hidden;
}

.ai-review-folder-lines article {
    align-items: center;
    background: rgba(2, 6, 12, 0.22);
    border-bottom: 1px solid rgba(148, 163, 184, 0.08);
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(260px, 1fr) auto auto auto;
    padding: 13px 15px;
}

.ai-review-folder-lines article:last-child {
    border-bottom: 0;
}

.ai-review-folder-lines article:hover {
    background: rgba(15, 23, 42, 0.5);
}

.ai-review-folder-title {
    color: var(--ai-primary-text);
    display: block;
    font-size: 0.98rem;
    font-weight: 800;
    line-height: 1.25;
    text-decoration: none;
}

.ai-review-folder-node {
    padding-left: calc(var(--ai-folder-level, 0) * 18px);
    position: relative;
}

.ai-review-folder-node::before {
    background: rgba(148, 163, 184, 0.18);
    content: "";
    height: 1px;
    left: calc((var(--ai-folder-level, 0) * 18px) - 12px);
    position: absolute;
    top: 11px;
    width: 8px;
}

.ai-review-folder-root::before {
    display: none;
}

.ai-review-folder-title:hover,
.ai-review-folder-link:hover {
    color: var(--ai-accent-muted);
}

.ai-review-folder-lines .mono,
.ai-review-folder-lines article > span {
    color: var(--ai-tertiary-text);
    font-size: 0.78rem;
}

.ai-review-linked-snapshot {
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 999px;
    padding: 4px 8px;
    white-space: nowrap;
}

.ai-review-folder-link {
    color: var(--ai-secondary-text);
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}

.ai-review-folder-card-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-review-folder-nav-card {
    background: rgba(2, 6, 12, 0.28);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    display: grid;
    gap: 14px;
    padding: 15px;
}

.ai-review-folder-nav-card h3 {
    color: var(--ai-primary-text);
    font-size: 1.02rem;
    line-height: 1.25;
    margin: 4px 0 5px;
}

.ai-review-folder-nav-card .mono {
    color: var(--ai-tertiary-text);
    display: block;
    font-size: 0.78rem;
    overflow-wrap: anywhere;
}

.ai-review-folder-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.ai-review-folder-card-meta span {
    background: rgba(15, 23, 42, 0.48);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 999px;
    color: var(--ai-secondary-text);
    font-size: 0.75rem;
    padding: 5px 8px;
}

body.page-access-inventory .ai-review-plan-card:hover,
body.page-access-inventory .ai-review-folder-card:hover,
body.page-access-inventory .ai-review-area-card:hover,
body.page-access-inventory .ai-review-rule-card:hover {
    background: #070d15;
    border-color: rgba(148, 163, 184, 0.12);
    box-shadow: none;
    transform: none;
}

body.page-access-inventory .ai-review-folder-nav-card:hover {
    background: rgba(2, 6, 12, 0.28);
    border-color: rgba(148, 163, 184, 0.1);
    box-shadow: none;
    transform: none;
}

body.page-access-inventory .ai-review-structure-panel:hover,
body.page-access-inventory .ai-review-people-panel:hover,
body.page-access-inventory .ai-review-technical-panel:hover {
    background: var(--ai-card);
    border-color: var(--ai-border);
    box-shadow: none;
    transform: none;
}

.ai-review-folder-hero {
    margin-bottom: 14px;
}

.ai-review-summary-bar {
    background: rgba(7, 13, 21, 0.84);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 12px;
    display: grid;
    gap: 0;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 16px;
    overflow: hidden;
}

.ai-review-summary-bar article {
    border-right: 1px solid rgba(148, 163, 184, 0.08);
    display: grid;
    gap: 4px;
    padding: 12px 14px;
}

.ai-review-summary-bar article:last-child {
    border-right: 0;
}

.ai-review-summary-bar span {
    color: var(--ai-secondary-text);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ai-review-summary-bar strong {
    color: var(--ai-primary-text);
    font-size: 1.35rem;
    line-height: 1;
}

.ai-review-people-panel .ai-section-heading {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-bottom: 14px;
}

.ai-review-people-panel .ai-section-heading h2,
.ai-review-compare-panel h2,
.ai-review-technical-panel h2 {
    color: var(--ai-primary-text);
    font-size: 1rem;
    margin: 0 0 5px;
}

.ai-review-people-panel .ai-section-heading p {
    color: var(--ai-secondary-text);
    margin: 0;
}

.ai-review-person-list {
    display: grid;
    gap: 18px;
}

.ai-review-permission-section {
    display: grid;
    gap: 10px;
}

.ai-review-permission-section h3 {
    margin: 0;
}

.ai-review-person-rows {
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    overflow: hidden;
}

.ai-review-person-row {
    align-items: center;
    background: rgba(2, 6, 12, 0.28);
    border-bottom: 1px solid rgba(148, 163, 184, 0.08);
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(180px, 0.8fr) minmax(260px, 1.6fr) minmax(120px, 0.5fr);
    padding: 13px 15px;
}

.ai-review-person-row:last-child {
    border-bottom: 0;
}

.ai-review-person-row:hover {
    background: rgba(15, 23, 42, 0.58);
}

body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-technical-panel .ai-review-technical-groups article:hover {
    background: rgba(2, 6, 12, 0.28) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

.ai-review-person-row strong {
    color: var(--ai-primary-text);
    display: block;
    font-size: 0.98rem;
    line-height: 1.25;
}

.ai-review-person-row span,
.ai-review-person-row small {
    color: var(--ai-tertiary-text);
    font-size: 0.78rem;
}

.ai-review-person-row p {
    color: var(--ai-secondary-text);
    line-height: 1.45;
    margin: 0;
}

.ai-review-person-compare {
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
}

.ai-review-person-compare article {
    background: rgba(2, 6, 12, 0.28);
    border-right: 1px solid rgba(148, 163, 184, 0.08);
    display: grid;
    gap: 6px;
    padding: 14px;
}

.ai-review-person-compare article:last-child {
    border-right: 0;
}

.ai-review-person-compare span {
    color: var(--ai-tertiary-text);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ai-review-person-compare strong {
    color: var(--ai-primary-text);
}

.ai-review-person-compare p,
.ai-review-technical-note,
.ai-review-technical-groups p {
    color: var(--ai-secondary-text);
    line-height: 1.45;
    margin: 0;
}

.ai-review-technical-note {
    background: rgba(15, 23, 42, 0.44);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 10px;
    margin-bottom: 12px;
    padding: 12px 14px;
}

.ai-review-partner-list {
    display: grid;
    gap: 10px;
}

.ai-review-partner-list > span {
    color: var(--ai-secondary-text);
    font-size: 0.86rem;
}

body.page-access-inventory .ai-review-partner-grid {
    display: grid;
    gap: 0.5rem 0.75rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    list-style: none;
    margin: 0.75rem 0 0;
    padding-left: 0;
}

body.page-access-inventory .ai-review-partner-grid-item {
    background: rgba(15, 23, 42, 0.45);
    border: 1px solid rgba(96, 165, 250, 0.22);
    border-radius: 0.55rem;
    color: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: anywhere;
    padding: 0.45rem 0.65rem;
}

.ai-review-current-folder {
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
    overflow: hidden;
}

.ai-review-current-folder article {
    background: rgba(2, 6, 12, 0.24);
    border-right: 1px solid rgba(148, 163, 184, 0.08);
    display: grid;
    gap: 4px;
    padding: 12px;
}

.ai-review-current-folder article:last-child {
    border-right: 0;
}

.ai-review-current-folder span {
    color: var(--ai-tertiary-text);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ai-review-current-folder strong {
    color: var(--ai-primary-text);
    font-size: 0.9rem;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.ai-current-access-list {
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 12px;
    overflow: hidden;
}

.ai-current-access-head,
.ai-current-access-row {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(220px, 1fr) minmax(180px, 0.7fr) minmax(240px, 1fr);
}

.ai-current-access-head {
    background: rgba(15, 23, 42, 0.48);
    color: var(--ai-tertiary-text);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    padding: 10px 14px;
    text-transform: uppercase;
}

.ai-current-access-row {
    background: rgba(2, 6, 12, 0.24);
    border-top: 1px solid rgba(148, 163, 184, 0.08);
    padding: 12px 14px;
}

.ai-current-access-row:hover {
    background: rgba(2, 6, 12, 0.24) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
    box-shadow: none !important;
    color: inherit;
    transform: none !important;
}

body.page-access-inventory .ai-review-current-access-panel:hover {
    background: var(--ai-card);
    border-color: var(--ai-border);
}

body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover > div,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover strong,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover span,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover p,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover small {
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    text-decoration: none;
    transform: none !important;
}

body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover {
    background: rgba(2, 6, 12, 0.24) !important;
    border-top-color: rgba(148, 163, 184, 0.08) !important;
}

body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover > div,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover strong,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover span,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover p,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover small,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover > div,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover strong,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover span,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover p,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover small,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover > div,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover strong,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover span,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover p,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover small {
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

.ai-current-access-row strong {
    color: var(--ai-primary-text);
    display: block;
    line-height: 1.3;
}

.ai-current-access-row span:not(.ai-permission-chip):not(.ai-badge) {
    color: var(--ai-tertiary-text);
    font-size: 0.8rem;
}

.ai-permission-current {
    background: rgba(59, 130, 246, 0.1);
    border: 1px solid rgba(147, 197, 253, 0.18);
    color: #e0f2fe;
    margin-right: 6px;
}

.ai-current-permission-summary,
.ai-current-permission-details,
.ai-current-inheritance-note {
    display: block;
    margin: 6px 0 0;
}

.ai-current-permission-summary {
    color: var(--ai-secondary-text);
    font-size: 0.84rem;
    line-height: 1.45;
}

.ai-current-permission-details,
.ai-current-inheritance-note {
    color: var(--ai-tertiary-text);
    font-size: 0.76rem;
    line-height: 1.4;
}

.ai-review-unknown-inline {
    background: rgba(15, 23, 42, 0.4);
    border: 1px solid rgba(251, 191, 36, 0.14);
    border-radius: 10px;
    color: var(--ai-secondary-text);
    display: grid;
    gap: 6px;
    margin-top: 12px;
    padding: 12px 14px;
}

.ai-review-unknown-inline strong {
    color: var(--ai-primary-text);
}

.ai-review-unknown-inline ul {
    color: var(--ai-tertiary-text);
    margin: 0;
    padding-left: 18px;
}

.ai-review-technical-groups {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}

.ai-review-technical-groups article {
    align-items: center;
    background: rgba(2, 6, 12, 0.26);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 10px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(220px, 1fr) auto minmax(240px, 1.2fr) minmax(100px, 0.4fr);
    padding: 12px;
}

.ai-review-technical-groups strong {
    color: var(--ai-primary-text);
    display: block;
}

.ai-review-technical-groups span:not(.ai-permission-chip),
.ai-review-technical-groups small {
    color: var(--ai-tertiary-text);
    font-size: 0.78rem;
}

.mono {
    font-family: var(--font-mono);
}

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

    .ai-grid-3,
    .ai-review-plan-grid,
    .ai-review-area-grid,
    .ai-review-folder-grid,
    .ai-review-folder-card-grid,
    .ai-review-rule-grid,
    .ai-review-compare-grid,
    .ai-review-person-compare,
    .ai-review-current-folder,
    .ai-review-context {
        grid-template-columns: 1fr;
    }

    .ai-review-summary-bar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ai-review-person-row,
    .ai-current-access-head,
    .ai-current-access-row,
    .ai-review-folder-lines article,
    .ai-review-technical-groups article {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1100px) {
    body.page-access-inventory .ai-review-partner-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .ai-hero,
    .ai-explorer-card {
        align-items: flex-start;
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .ai-metrics,
    .ai-card-grid,
    .ai-investigation-grid,
    .ai-grid-2,
    .ai-review-summary-bar,
    .ai-filter-bar,
    .ai-search {
        grid-template-columns: 1fr;
    }

    .ai-review-summary-bar article,
    .ai-review-current-folder article,
    .ai-review-person-compare article {
        border-right: 0;
        border-bottom: 1px solid rgba(148, 163, 184, 0.08);
    }

    .ai-review-summary-bar article:last-child,
    .ai-review-current-folder article:last-child,
    .ai-review-person-compare article:last-child {
        border-bottom: 0;
    }

    .ai-mini-list a,
    .ai-list-row,
    .ai-result-item,
    .ai-access-line,
    .ai-compact-list a {
        grid-template-columns: 1fr;
    }

    .ai-mini-list em,
    .ai-list-row em,
    .ai-result-item em,
    .ai-compact-list em {
        text-align: left;
    }

    .ai-object-header,
    .ai-group-access-card header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ai-review-area-strip article {
        align-items: flex-start;
        flex-direction: column;
    }

    .ai-object-badges {
        justify-content: flex-start;
    }

    body.page-access-inventory .ai-review-partner-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    body.page-access-inventory .ai-review-partner-grid {
        grid-template-columns: 1fr;
    }
}

/* Access Inventory tabular/list rows are informational; keep hover only on links and controls. */
body.page-access-inventory .ai-table tr:hover td {
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

body.page-access-inventory .ai-mini-list a:hover,
body.page-access-inventory .ai-list-row:hover,
body.page-access-inventory .ai-result-item:hover,
body.page-access-inventory .ai-access-line:hover,
body.page-access-inventory .ai-compact-list a:hover {
    background: #070d15 !important;
    border-color: rgba(148, 163, 184, 0.11) !important;
    box-shadow: none !important;
    transform: none !important;
}

body.page-access-inventory .ai-review-folder-lines article:hover {
    background: rgba(2, 6, 12, 0.22) !important;
    box-shadow: none !important;
    transform: none !important;
}

body.page-access-inventory .ai-current-access-row:hover,
body.page-access-inventory .ai-review-current-access-panel .ai-current-access-row:hover {
    background: rgba(2, 6, 12, 0.24) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
    box-shadow: none !important;
    transform: none !important;
}

body.page-access-inventory .ai-review-person-row:hover,
body.page-access-inventory .ai-review-maintained-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-revoked-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-people-panel .ai-review-person-row:hover,
body.page-access-inventory .ai-review-technical-panel .ai-review-technical-groups article:hover {
    background: rgba(2, 6, 12, 0.28) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Access Review decision colors: discreet executive emphasis by decision type. */
body.page-access-inventory .ai-review-card-special {
    background:
        linear-gradient(90deg, rgba(14, 116, 144, 0.08), rgba(13, 19, 32, 0.95) 20%),
        var(--ai-card);
    border-color: rgba(56, 189, 248, 0.18);
    box-shadow: inset 3px 0 0 rgba(56, 189, 248, 0.26);
}

body.page-access-inventory .ai-review-card-info {
    background:
        linear-gradient(90deg, rgba(30, 64, 175, 0.08), rgba(13, 19, 32, 0.95) 20%),
        var(--ai-card);
    border-color: rgba(96, 165, 250, 0.16);
    box-shadow: inset 3px 0 0 rgba(96, 165, 250, 0.2);
}

body.page-access-inventory .ai-review-card-danger {
    background:
        linear-gradient(90deg, rgba(127, 29, 29, 0.24), rgba(13, 19, 32, 0.96) 20%),
        var(--ai-card);
    border-color: rgba(248, 113, 113, 0.34);
    box-shadow: inset 3px 0 0 rgba(248, 113, 113, 0.42);
}

body.page-access-inventory .ai-review-card-success {
    background:
        linear-gradient(90deg, rgba(20, 83, 45, 0.15), rgba(13, 19, 32, 0.96) 20%),
        var(--ai-card);
    border-color: rgba(45, 212, 191, 0.24);
    box-shadow: inset 3px 0 0 rgba(45, 212, 191, 0.28);
}

body.page-access-inventory .ai-review-card-danger .ai-section-heading h2 {
    color: #fee2e2;
}

body.page-access-inventory .ai-review-card-success .ai-section-heading h2 {
    color: #d1fae5;
}

body.page-access-inventory .ai-review-card-special .ai-section-heading h2,
body.page-access-inventory .ai-review-card-info .ai-section-heading h2 {
    color: var(--ai-primary-text);
}

body.page-access-inventory .ai-review-card-danger .ai-permission-none {
    background: rgba(127, 29, 29, 0.42);
    border-color: rgba(248, 113, 113, 0.44);
    color: #fecaca;
}

body.page-access-inventory .ai-review-card-success .ai-permission-ro,
body.page-access-inventory .ai-review-card-success .ai-permission-rw {
    background: rgba(13, 148, 136, 0.14);
    border-color: rgba(94, 234, 212, 0.24);
    color: #ccfbf1;
}

body.page-access-inventory .ai-review-card-success .ai-permission-full,
body.page-access-inventory .ai-review-card-success .ai-permission-custom {
    background: rgba(20, 184, 166, 0.13);
    border-color: rgba(94, 234, 212, 0.22);
    color: #d1fae5;
}

body.page-access-inventory .ai-review-card-danger .ai-review-person-row:hover {
    background: rgba(2, 6, 12, 0.28) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
}

body.page-access-inventory .ai-review-card-success .ai-review-person-row:hover {
    background: rgba(2, 6, 12, 0.28) !important;
    border-color: rgba(148, 163, 184, 0.08) !important;
}

/* Final precedence layer for the Night Owl Desk Central workspace. */
body.page-tickets .desk-central-header-main {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(240px, 0.9fr) minmax(360px, 1.25fr) auto;
    width: 100%;
}

body.page-tickets .desk-search-cluster {
    display: grid;
    gap: 7px;
    min-width: 0;
}

body.page-tickets .desk-header-actions,
body.page-tickets .desk-quick-links {
    align-items: center;
    display: flex;
    gap: 8px;
}

body.page-tickets .desk-header-actions {
    justify-content: end;
    white-space: nowrap;
}

body.page-tickets .desk-quick-links {
    gap: 6px;
    overflow: hidden;
}

body.page-tickets .desk-quick-links a,
body.page-tickets .desk-quick-links button {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid #263241;
    border-radius: 999px;
    color: #94a3b8;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 auto;
    font: inherit;
    font-size: 11px;
    font-weight: 850;
    gap: 6px;
    min-height: 26px;
    padding: 0 9px;
    text-decoration: none;
}

body.page-tickets .desk-quick-links a:hover,
body.page-tickets .desk-quick-links button:hover {
    border-color: rgba(34, 197, 94, 0.28);
    color: #f8fafc;
}

body.page-tickets .desk-quick-links svg {
    height: 13px;
    width: 13px;
}

body.page-tickets .desk-kpi-strip {
    display: grid;
    grid-template-columns: repeat(8, minmax(128px, 1fr));
    min-height: 92px;
}

body.page-tickets .desk-kpi-link {
    min-height: 92px;
    padding: 9px 11px;
}

body.page-tickets .desk-filter-commandbar {
    align-items: center;
    background: rgba(8, 11, 16, 0.72);
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
}

body.page-tickets .desk-primary-filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .desk-ticket-table {
    border-collapse: initial;
    border-spacing: 0;
    display: grid;
    min-width: 1280px;
    width: 100%;
}

body.page-tickets .desk-ticket-grid {
    align-items: center;
    display: grid;
    grid-template-columns: 32px 36px minmax(260px, 1.8fr) 142px 164px 142px 150px 154px 132px 98px;
}

body.page-tickets .desk-ticket-grid-header {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    min-height: 34px;
    padding: 0 10px;
    text-transform: uppercase;
}

body.page-tickets .desk-ticket-grid-body {
    display: grid;
    gap: 8px;
}

body.page-tickets .desk-ticket-row {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 13px;
    min-height: 78px;
    padding: 9px 10px;
}

body.page-tickets .desk-ticket-row > div {
    min-width: 0;
    padding: 0 7px;
}

body.page-tickets .desk-ticket-title {
    background: transparent;
    border: 0;
    color: #f8fafc;
    cursor: pointer;
    display: block;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    max-width: 100%;
    overflow: hidden;
    padding: 0;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .desk-ticket-row.is-selected {
    background: linear-gradient(90deg, rgba(34, 197, 94, 0.10), #0b1118 18%);
    border-color: rgba(34, 197, 94, 0.34);
}

body.page-tickets .desk-row-actions-cell {
    justify-self: end;
}

body.page-tickets .desk-preview-empty {
    align-content: center;
    display: grid;
    gap: 12px;
    justify-items: center;
    min-height: 520px;
    padding: 28px;
    text-align: center;
}

body.page-tickets .desk-preview-empty > i,
body.page-tickets .desk-preview-empty > svg {
    background: rgba(34, 197, 94, 0.10);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 18px;
    color: #86efac;
    height: 54px;
    padding: 14px;
    width: 54px;
}

body.page-tickets .desk-preview-empty strong {
    color: #f8fafc;
    font-size: 17px;
}

body.page-tickets .desk-preview-empty span {
    color: #94a3b8;
    max-width: 340px;
}

body.page-tickets .desk-preview-empty dl {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin: 6px 0 0;
}

body.page-tickets .desk-preview-empty dl div {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 999px;
    display: inline-flex;
    gap: 6px;
    padding: 6px 9px;
}

body.page-tickets .desk-preview-empty dt {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 900;
}

body.page-tickets .desk-preview-empty dd {
    color: #94a3b8;
    font-size: 11px;
    margin: 0;
}

@media (max-width: 1360px) {
    body.page-tickets .desk-central-header-main {
        grid-template-columns: minmax(220px, 1fr) minmax(320px, 1.2fr);
    }

    body.page-tickets .desk-header-actions {
        grid-column: 1 / -1;
        justify-content: start;
    }

    body.page-tickets .desk-kpi-strip {
        grid-template-columns: repeat(4, minmax(150px, 1fr));
    }
}

@media (max-width: 1100px) {
    body.page-tickets .desk-central-header-main,
    body.page-tickets .desk-central-workspace {
        grid-template-columns: 1fr;
    }

    body.page-tickets .desk-kpi-strip {
        display: flex;
        overflow-x: auto;
    }

    body.page-tickets .desk-kpi-link {
        min-width: 150px;
    }
}

/* Central first-view refinement: density, hierarchy, and calmer operational rhythm. */
body.page-tickets .desk-central-shell {
    gap: 9px;
}

body.page-tickets .desk-central-header {
    background:
        linear-gradient(180deg, rgba(13, 17, 23, 0.98), rgba(8, 11, 16, 0.96));
    border-color: rgba(38, 50, 65, 0.86);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
    padding: 12px 14px;
}

body.page-tickets .desk-central-header-main {
    grid-template-columns: minmax(260px, 0.86fr) minmax(420px, 1.38fr) max-content;
    gap: 16px;
}

body.page-tickets .desk-compact-title {
    align-items: center;
    min-width: 0;
}

body.page-tickets .desk-compact-title h1 {
    font-size: 18px;
    letter-spacing: -0.01em;
}

body.page-tickets .desk-compact-title span:not(.desk-compact-icon) {
    color: #8aa0b7;
    font-size: 12px;
}

body.page-tickets .desk-compact-icon {
    box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.05);
    height: 34px;
    width: 34px;
}

body.page-tickets .desk-central-search {
    background: rgba(5, 8, 13, 0.9);
    border-color: rgba(38, 50, 65, 0.95);
    min-height: 40px;
}

body.page-tickets .desk-search-cluster {
    gap: 6px;
}

body.page-tickets .desk-header-actions {
    gap: 7px;
}

body.page-tickets .desk-view-switcher {
    padding: 3px;
}

body.page-tickets .desk-view-switcher a {
    min-height: 29px;
    padding: 0 9px;
}

body.page-tickets .desk-module-nav {
    gap: 6px;
    padding: 5px;
}

body.page-tickets .desk-module-nav a {
    min-height: 31px;
    padding: 0 11px;
}

body.page-tickets .desk-module-nav a.active {
    background: rgba(34, 197, 94, 0.10);
    box-shadow: inset 0 -1px 0 rgba(34, 197, 94, 0.26);
}

body.page-tickets .desk-kpi-strip {
    grid-template-columns: repeat(8, minmax(118px, 1fr));
    min-height: 72px;
}

body.page-tickets .desk-kpi-link {
    gap: 4px;
    min-height: 72px;
    padding: 8px 10px;
}

body.page-tickets .desk-kpi-link strong {
    font-size: 17px;
}

body.page-tickets .desk-kpi-link span {
    font-size: 10px;
    letter-spacing: 0.03em;
}

body.page-tickets .desk-kpi-topline svg {
    height: 13px;
    opacity: 0.78;
    width: 13px;
}

body.page-tickets .desk-kpi-topline em {
    color: #7ddca0;
    font-size: 10px;
}

body.page-tickets .desk-kpi-spark {
    height: 12px;
    opacity: 0.42;
}

body.page-tickets .desk-kpi-spark i {
    background: linear-gradient(180deg, rgba(134, 239, 172, 0.42), rgba(34, 197, 94, 0.06));
}

body.page-tickets .desk-kpi-link:hover {
    background: rgba(34, 197, 94, 0.035);
}

body.page-tickets .desk-filter-commandbar {
    padding: 7px;
}

body.page-tickets .desk-filter-chip summary,
body.page-tickets .desk-view-select summary,
body.page-tickets .desk-filter-clear {
    min-height: 32px;
}

body.page-tickets .desk-realtime-chip {
    font-size: 11px;
    min-height: 28px;
    padding: 5px 9px;
}

body.page-tickets .desk-central-workspace {
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) clamp(420px, 34vw, 540px);
}

body.page-tickets .desk-ticket-table-panel {
    padding: 13px;
}

body.page-tickets .desk-panel-title-row {
    margin-bottom: 10px;
}

body.page-tickets .desk-ticket-grid {
    grid-template-columns: 30px 34px minmax(250px, 1.9fr) 132px 132px 138px 142px 146px 124px 88px;
}

body.page-tickets .desk-ticket-grid-header {
    min-height: 28px;
    padding: 0 8px;
}

body.page-tickets .desk-ticket-grid-body {
    gap: 6px;
}

body.page-tickets .desk-ticket-row {
    min-height: 66px;
    padding: 7px 8px;
}

body.page-tickets .desk-ticket-row > div {
    padding: 0 5px;
}

body.page-tickets .desk-row-origin-icon {
    border-radius: 9px;
    height: 28px;
    width: 28px;
}

body.page-tickets .desk-row-origin-icon svg,
body.page-tickets .desk-origin-badge svg,
body.page-tickets .desk-mini-flag svg,
body.page-tickets .desk-icon-action svg {
    height: 14px;
    width: 14px;
}

body.page-tickets .desk-ticket-number {
    border-radius: 9px;
    color: #6ee7a1;
    font-size: 12px;
    height: 32px;
    min-width: 52px;
    padding: 0 8px;
}

body.page-tickets .desk-ticket-title {
    font-size: 13px;
    line-height: 1.25;
}

body.page-tickets .desk-ticket-meta {
    color: #7f93aa;
    font-size: 11px;
    gap: 7px;
    margin-top: 3px;
}

body.page-tickets .desk-mini-flag {
    color: #7f93aa;
    font-size: 10.5px;
}

body.page-tickets .desk-badge,
body.page-tickets .desk-origin-badge,
body.page-tickets .desk-endpoint-chip {
    font-size: 10.5px;
    min-height: 24px;
    padding: 3px 7px;
}

body.page-tickets .desk-category-cell .desk-badge {
    background: rgba(15, 23, 42, 0.36);
    color: #b6c2d0;
}

body.page-tickets .desk-endpoint-chip {
    color: #9ad7b4;
}

body.page-tickets .desk-sla-cell {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.page-tickets .desk-sla-indicator {
    font-size: 12px;
    gap: 5px;
}

body.page-tickets .desk-sla-indicator svg {
    height: 13px;
    width: 13px;
}

body.page-tickets .desk-sla-cell small {
    color: #7f93aa;
    display: block;
    font-size: 10.5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .desk-sla-indicator.sla-ok {
    color: #cbd5e1;
}

body.page-tickets .desk-sla-indicator.sla-warning {
    color: #facc15;
}

body.page-tickets .desk-sla-indicator.sla-critical {
    color: #fca5a5;
}

body.page-tickets .desk-row-hover-actions {
    gap: 4px;
}

body.page-tickets .desk-icon-action {
    height: 28px;
    width: 28px;
}

body.page-tickets .desk-detail-panel {
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    height: calc(100vh - 132px);
    max-height: calc(100vh - 132px);
    min-height: 520px;
}

body.page-tickets .desk-detail-panel-header,
body.page-tickets .desk-detail-inline-state,
body.page-tickets .desk-comment-dock {
    flex: 0 0 auto;
}

body.page-tickets .desk-detail-panel-header {
    align-items: flex-start;
}

body.page-tickets .desk-detail-panel-header > div:first-child {
    min-width: 0;
}

body.page-tickets .desk-preview-header-actions {
    flex: 0 0 auto;
    flex-wrap: nowrap;
    gap: 6px;
    justify-content: flex-end;
    white-space: nowrap;
}

body.page-tickets .desk-detail-panel-body {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: 18px;
    scrollbar-gutter: stable;
}

body.page-tickets .desk-detail-panel-body .desk-quick-actions {
    margin-bottom: 2px;
}

@media (max-width: 1100px) {
    body.page-tickets .desk-detail-panel {
        height: auto;
        max-height: none;
        min-height: 0;
    }

    body.page-tickets .desk-detail-panel-body {
        overflow: visible;
        padding-bottom: 16px;
    }
}

body.page-tickets .desk-preview-empty {
    background:
        radial-gradient(circle at 50% 28%, rgba(34, 197, 94, 0.08), transparent 32%),
        linear-gradient(180deg, rgba(13, 17, 23, 0.7), transparent);
    min-height: 520px;
}

body.page-tickets .desk-preview-empty-features {
    background: rgba(8, 11, 16, 0.66);
    border: 1px solid rgba(38, 50, 65, 0.8);
    border-radius: 16px;
    display: grid;
    gap: 10px;
    margin-top: 4px;
    max-width: 360px;
    padding: 12px;
    width: 100%;
}

body.page-tickets .desk-preview-empty-features p {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    margin: 0;
    text-transform: uppercase;
}

body.page-tickets .desk-preview-empty-features ul {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    list-style: none;
    margin: 0;
    padding: 0;
}

body.page-tickets .desk-preview-empty-features li {
    align-items: center;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 12px;
    gap: 7px;
}

body.page-tickets .desk-preview-empty-features svg {
    color: #86efac;
    height: 14px;
    width: 14px;
}

@media (max-width: 1360px) {
    body.page-tickets .desk-central-header-main {
        grid-template-columns: minmax(240px, 0.9fr) minmax(360px, 1.2fr);
    }

    body.page-tickets .desk-header-actions {
        grid-column: 1 / -1;
    }
}

/* Advanced helpdesk filter bar */
body.page-tickets .desk-filter-commandbar {
    display: none;
}

body.page-tickets .nw-filterbar {
    align-items: center;
    background: rgba(8, 11, 16, 0.74);
    border: 1px solid rgba(31, 41, 55, 0.92);
    border-radius: 15px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding: 7px;
    position: relative;
    z-index: 35;
}

body.page-tickets .nw-filterbar__track {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
}

body.page-tickets .nw-filterbar__meta {
    color: #7f93aa;
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 800;
    padding-right: 6px;
}

body.page-tickets .nw-filter {
    position: relative;
}

body.page-tickets .nw-filter-chip,
body.page-tickets .nw-filter-global-clear {
    align-items: center;
    background: rgba(13, 17, 23, 0.92);
    border: 1px solid rgba(38, 50, 65, 0.92);
    border-radius: 999px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 850;
    gap: 7px;
    min-height: 32px;
    padding: 0 11px;
    white-space: nowrap;
}

body.page-tickets .nw-filter-chip:hover,
body.page-tickets .nw-filter-global-clear:hover:not(:disabled),
body.page-tickets .nw-filter.is-open .nw-filter-chip {
    background: #111827;
    border-color: rgba(148, 163, 184, 0.32);
    color: #f8fafc;
}

body.page-tickets .nw-filter.is-active .nw-filter-chip,
body.page-tickets .nw-filter-global-clear.is-active {
    background: linear-gradient(180deg, rgba(34, 197, 94, 0.12), rgba(15, 23, 42, 0.82));
    border-color: rgba(45, 212, 191, 0.34);
    box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.06);
    color: #f8fafc;
}

body.page-tickets .nw-filter-chip svg,
body.page-tickets .nw-filter-global-clear svg {
    height: 14px;
    width: 14px;
}

body.page-tickets .nw-filter-chip--view {
    background: linear-gradient(180deg, #101720, #0d1117);
}

body.page-tickets .nw-filter-chip__label {
    color: #86efac;
    font-size: 10px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-tickets .nw-filter-global-clear {
    color: #94a3b8;
}

body.page-tickets .nw-filter-global-clear:disabled {
    cursor: default;
    opacity: 0.48;
}

body.page-tickets .nw-filter-popover {
    background:
        linear-gradient(180deg, rgba(13, 17, 23, 0.98), rgba(8, 11, 16, 0.98));
    border: 1px solid rgba(38, 50, 65, 0.98);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.44), 0 0 0 1px rgba(34, 197, 94, 0.04);
    display: none;
    left: 0;
    min-width: 280px;
    overflow: hidden;
    position: absolute;
    top: calc(100% + 8px);
    width: 292px;
    z-index: 120;
}

body.page-tickets .nw-filter.is-open .nw-filter-popover {
    animation: nwFilterIn 130ms ease;
    display: grid;
}

body.page-tickets .nw-filter.is-align-end .nw-filter-popover {
    left: auto;
    right: 0;
}

body.page-tickets .nw-filter.is-drop-up .nw-filter-popover {
    bottom: calc(100% + 8px);
    top: auto;
}

@keyframes nwFilterIn {
    from { opacity: 0; transform: translateY(-4px) scale(0.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

body.page-tickets .nw-filter-popover--wide {
    width: min(480px, calc(100vw - 28px));
}

body.page-tickets .nw-filter-popover__header {
    align-items: center;
    border-bottom: 1px solid rgba(31, 41, 55, 0.88);
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr auto auto;
    padding: 12px;
}

body.page-tickets .nw-filter-popover__header span,
body.page-tickets .nw-filter-group__title {
    color: #7f93aa;
    display: block;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-filter-popover__header strong {
    color: #f8fafc;
    font-size: 13px;
}

body.page-tickets .nw-filter-popover__header em {
    color: #94a3b8;
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
}

body.page-tickets .nw-filter-popover__close {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(38, 50, 65, 0.9);
    border-radius: 9px;
    color: #94a3b8;
    cursor: pointer;
    display: inline-flex;
    height: 28px;
    justify-content: center;
    padding: 0;
    width: 28px;
}

body.page-tickets .nw-filter-popover__close:hover {
    color: #f8fafc;
}

body.page-tickets .nw-filter-popover__close svg {
    height: 14px;
    width: 14px;
}

body.page-tickets .nw-filter-popover__search {
    align-items: center;
    background: #060a10;
    border: 1px solid rgba(38, 50, 65, 0.94);
    border-radius: 11px;
    display: flex;
    gap: 8px;
    margin: 10px 12px 8px;
    min-height: 36px;
    padding: 0 10px;
}

body.page-tickets .nw-filter-popover__search svg {
    color: #7f93aa;
    height: 14px;
    width: 14px;
}

body.page-tickets .nw-filter-popover__search input {
    background: transparent;
    border: 0;
    color: #f8fafc;
    flex: 1;
    font: inherit;
    min-width: 0;
    outline: none;
}

body.page-tickets .nw-filter-popover__list,
body.page-tickets .nw-filter-popover__advanced {
    display: grid;
    gap: 5px;
    max-height: 292px;
    overflow-y: auto;
    padding: 0 8px 10px;
}

body.page-tickets .nw-filter-popover__advanced {
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: 320px;
    padding-bottom: 14px;
    padding-top: 12px;
}

body.page-tickets .nw-filter-group {
    display: grid;
    gap: 5px;
    min-width: 0;
}

body.page-tickets .nw-filter-option,
body.page-tickets .nw-filter-view-option {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 11px;
    color: #cbd5e1;
    cursor: pointer;
    display: grid;
    gap: 8px;
    grid-template-columns: auto auto 1fr auto;
    min-height: 38px;
    padding: 7px 8px;
    text-decoration: none;
}

body.page-tickets .nw-filter-view-option {
    grid-template-columns: auto 1fr;
}

body.page-tickets .nw-filter-option:hover,
body.page-tickets .nw-filter-view-option:hover {
    background: rgba(15, 23, 42, 0.78);
    border-color: rgba(38, 50, 65, 0.7);
}

body.page-tickets .nw-filter-option:has(input:checked) {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(45, 212, 191, 0.24);
}

body.page-tickets .nw-filter-option input {
    accent-color: #22c55e;
    height: 14px;
    margin: 0;
    width: 14px;
}

body.page-tickets .nw-filter-option__dot {
    border-radius: 999px;
    height: 9px;
    width: 9px;
}

body.page-tickets .nw-filter-option__dot.status-new { background: #38bdf8; }
body.page-tickets .nw-filter-option__dot.status-in_progress { background: #22c55e; }
body.page-tickets .nw-filter-option__dot.status-waiting_user { background: #facc15; }
body.page-tickets .nw-filter-option__dot.status-waiting_third_party { background: #fb923c; }
body.page-tickets .nw-filter-option__dot.status-resolved { background: #5eead4; }
body.page-tickets .nw-filter-option__dot.status-closed { background: #64748b; }
body.page-tickets .nw-filter-option__dot.status-canceled { background: #f87171; }
body.page-tickets .nw-filter-option__dot.priority-low { background: #64748b; }
body.page-tickets .nw-filter-option__dot.priority-normal { background: #60a5fa; }
body.page-tickets .nw-filter-option__dot.priority-high { background: #f59e0b; }
body.page-tickets .nw-filter-option__dot.priority-critical { background: #ef4444; }

body.page-tickets .nw-filter-option__label {
    color: #dbe7ef;
    display: grid;
    font-size: 12px;
    font-weight: 800;
    gap: 2px;
    min-width: 0;
}

body.page-tickets .nw-filter-option__label small {
    color: #7f93aa;
    font-size: 10.5px;
    font-weight: 700;
}

body.page-tickets .nw-filter-option__label svg {
    color: #93c5fd;
    height: 13px;
    margin-right: 4px;
    vertical-align: -2px;
    width: 13px;
}

body.page-tickets .nw-filter-option__count {
    color: #7f93aa;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
}

body.page-tickets .nw-filter-avatar {
    align-items: center;
    background: rgba(34, 197, 94, 0.10);
    border: 1px solid rgba(34, 197, 94, 0.20);
    border-radius: 999px;
    color: #86efac;
    display: inline-flex;
    font-size: 11px;
    font-weight: 900;
    height: 24px;
    justify-content: center;
    width: 24px;
}

body.page-tickets .nw-filter-empty {
    color: #7f93aa;
    display: none;
    font-size: 12px;
    padding: 12px;
    text-align: center;
}

body.page-tickets .nw-filter-empty:not([hidden]) {
    display: block;
}

body.page-tickets .nw-filter-popover__footer {
    align-items: center;
    background: rgba(8, 11, 16, 0.95);
    border-top: 1px solid rgba(31, 41, 55, 0.88);
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    padding: 10px 12px;
}

body.page-tickets .nw-filter-popover--wide .nw-filter-popover__footer {
    gap: 10px;
    padding: 12px 14px 14px;
}

body.page-tickets .nw-filter-popover--wide .nw-filter-apply,
body.page-tickets .nw-filter-popover--wide .nw-filter-clear {
    min-width: 116px;
    text-align: center;
}

body.page-tickets .nw-filter-apply,
body.page-tickets .nw-filter-clear {
    border-radius: 10px;
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    min-height: 32px;
    padding: 0 12px;
}

body.page-tickets .nw-filter-apply {
    background: #22c55e;
    border: 1px solid rgba(134, 239, 172, 0.36);
    color: #052e16;
}

body.page-tickets .nw-filter-clear {
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(38, 50, 65, 0.88);
    color: #cbd5e1;
}

body.page-tickets .nw-filter-apply:hover {
    background: #4ade80;
}

body.page-tickets .nw-filter-clear:hover {
    border-color: rgba(148, 163, 184, 0.34);
    color: #f8fafc;
}

body.page-tickets .desk-ticket-empty.is-client-filter-empty {
    grid-column: 1 / -1;
    min-height: 120px;
}

body.page-tickets .desk-ticket-empty.is-client-filter-empty span {
    display: grid;
    gap: 3px;
}

body.page-tickets .desk-ticket-empty.is-client-filter-empty small {
    color: #7f93aa;
    font-size: 12px;
}

@media (max-width: 900px) {
    body.page-tickets .nw-filterbar {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-tickets .nw-filterbar__track {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
    }

    body.page-tickets .nw-filter-popover {
        position: fixed;
        left: 14px !important;
        right: 14px !important;
        top: 118px;
        width: auto;
    }
}

/* Night Owl Desk operational UX layer: keyboard focus, context menu, drawer and bulk modals. */
body.page-tickets .desk-ticket-row.is-key-focused {
    outline: 2px solid rgba(125, 211, 252, 0.72);
    outline-offset: 2px;
    position: relative;
    z-index: 1;
}

body.page-tickets .desk-ticket-row.is-key-focused.is-selected {
    box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.32), 0 0 0 4px rgba(125, 211, 252, 0.08);
}

body.page-tickets .nw-next-action {
    align-items: center;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

body.page-tickets .nw-next-action .desk-btn {
    white-space: nowrap;
}

body.page-tickets .nw-next-action--warning {
    border-color: rgba(245, 158, 11, 0.36);
    background: linear-gradient(135deg, rgba(120, 53, 15, 0.22), #080b10 42%);
}

body.page-tickets .nw-next-action--danger {
    border-color: rgba(248, 113, 113, 0.42);
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.24), #080b10 42%);
}

body.page-tickets .nw-next-action--info {
    border-color: rgba(96, 165, 250, 0.32);
    background: linear-gradient(135deg, rgba(30, 64, 175, 0.18), #080b10 42%);
}

body.page-tickets .nw-comment-tools,
body.page-tickets .nw-comment-tools > div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-comment-tools {
    justify-content: space-between;
}

body.page-tickets .nw-comment-tools small {
    color: #fbbf24;
    font-size: 11px;
    font-weight: 800;
}

body.page-tickets .nw-ticket-context-menu {
    background: linear-gradient(180deg, rgba(13, 17, 23, 0.98), rgba(8, 11, 16, 0.98));
    border: 1px solid rgba(38, 50, 65, 0.96);
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.46);
    display: grid;
    gap: 3px;
    padding: 7px;
    position: fixed;
    width: 260px;
    z-index: 900;
}

body.page-tickets .nw-ticket-context-menu[hidden],
body.page-tickets .nw-ticket-drawer[hidden] {
    display: none;
}

body.page-tickets .nw-ticket-context-menu button,
body.page-tickets .nw-ticket-context-menu a {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #dbe7ef;
    display: grid;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    gap: 9px;
    grid-template-columns: 18px minmax(0, 1fr) auto;
    min-height: 34px;
    padding: 7px 8px;
    text-align: left;
    text-decoration: none;
}

body.page-tickets .nw-ticket-context-menu button:hover,
body.page-tickets .nw-ticket-context-menu a:hover {
    background: rgba(15, 23, 42, 0.78);
    border-color: rgba(38, 50, 65, 0.78);
}

body.page-tickets .nw-ticket-context-menu button:disabled {
    cursor: not-allowed;
    opacity: 0.42;
}

body.page-tickets .nw-ticket-context-menu svg {
    color: #86efac;
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-ticket-context-menu kbd,
body.page-tickets .desk-command-groups button small {
    color: #7f93aa;
    font-size: 10px;
}

body.page-tickets .nw-ticket-context-menu hr {
    border: 0;
    border-top: 1px solid rgba(38, 50, 65, 0.84);
    margin: 4px 2px;
}

body.page-tickets .nw-ticket-drawer {
    background: rgba(2, 6, 23, 0.58);
    inset: 0;
    position: fixed;
    z-index: 840;
}

body.page-tickets .nw-ticket-drawer__panel {
    background: #0d1117;
    border-left: 1px solid rgba(38, 50, 65, 0.96);
    box-shadow: -22px 0 70px rgba(0, 0, 0, 0.42);
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    height: 100%;
    margin-left: auto;
    width: min(760px, 100vw);
}

body.page-tickets .nw-ticket-drawer__header {
    align-items: flex-start;
    border-bottom: 1px solid #1f2937;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 18px;
}

body.page-tickets .nw-ticket-drawer__header span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-ticket-drawer__header h2 {
    color: #f8fafc;
    margin: 6px 0 4px;
}

body.page-tickets .nw-ticket-drawer__header p {
    color: #94a3b8;
    margin: 0;
}

body.page-tickets .nw-ticket-drawer__header > div:last-child {
    display: flex;
    gap: 8px;
}

body.page-tickets .nw-ticket-drawer__tabs {
    border-bottom: 1px solid #1f2937;
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding: 10px 18px;
}

body.page-tickets .nw-ticket-drawer__tabs button {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(38, 50, 65, 0.88);
    border-radius: 999px;
    color: #94a3b8;
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    padding: 7px 12px;
    white-space: nowrap;
}

body.page-tickets .nw-ticket-drawer__tabs button.is-active {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.34);
    color: #d1fae5;
}

body.page-tickets .nw-ticket-drawer__body {
    display: grid;
    gap: 12px;
    min-height: 0;
    overflow-y: auto;
    padding: 18px;
}

body.page-tickets .nw-drawer-card,
body.page-tickets .nw-drawer-grid article {
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: grid;
    gap: 8px;
    padding: 13px;
}

body.page-tickets .nw-drawer-card h3,
body.page-tickets .nw-drawer-grid strong {
    color: #f8fafc;
}

body.page-tickets .nw-drawer-card p {
    color: #cbd5e1;
    line-height: 1.6;
    margin: 0;
}

body.page-tickets .nw-drawer-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-drawer-grid span {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-bulk-dialog {
    background: #0d1117;
    border: 1px solid rgba(38, 50, 65, 0.96);
    border-radius: 18px;
    color: #dbe7ef;
    max-width: min(640px, calc(100vw - 28px));
    padding: 0;
    width: 100%;
}

body.page-tickets .nw-bulk-dialog::backdrop {
    background: rgba(2, 6, 23, 0.72);
    backdrop-filter: blur(6px);
}

body.page-tickets .nw-bulk-dialog form {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 16px;
}

body.page-tickets .nw-bulk-dialog header,
body.page-tickets .nw-bulk-dialog footer {
    display: flex;
    gap: 14px;
    justify-content: space-between;
}

body.page-tickets .nw-bulk-dialog footer {
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-bulk-dialog header span {
    color: #86efac;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-bulk-dialog h2,
body.page-tickets .nw-bulk-dialog p {
    margin: 0;
}

body.page-tickets .nw-bulk-dialog p {
    color: #94a3b8;
    margin-top: 4px;
}

body.page-tickets .nw-bulk-dialog__list {
    display: grid;
    gap: 8px;
    max-height: 250px;
    overflow-y: auto;
}

body.page-tickets .nw-bulk-dialog__list label {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto auto minmax(0, 1fr);
    padding: 10px;
}

body.page-tickets .nw-bulk-dialog__list span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-bulk-dialog__list strong {
    color: #f8fafc;
}

body.page-tickets .nw-bulk-dialog__list small {
    color: #94a3b8;
}

body.page-tickets .nw-bulk-dialog__comment {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-bulk-dialog__comment span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-bulk-dialog textarea {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #f8fafc;
    padding: 10px;
}

body.page-tickets .desk-command-groups button.is-active,
body.page-tickets .desk-command-groups a.is-active {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.34);
}

body.page-tickets .desk-command-groups button span {
    display: grid;
    gap: 2px;
}

body.page-tickets .nw-command-empty {
    align-items: center;
    color: #94a3b8;
    display: grid;
    gap: 8px;
    justify-items: center;
    padding: 26px;
}

/* Preview workspace refinements. */
body.page-tickets .nw-next-action--critical {
    border-color: rgba(248, 113, 113, 0.46);
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.28), #080b10 42%);
}

body.page-tickets .nw-next-action--neutral {
    border-color: rgba(148, 163, 184, 0.22);
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.38), #080b10 42%);
}

body.page-tickets .nw-comment-visibility {
    background: rgba(15, 23, 42, 0.85);
    border: 1px solid rgba(38, 50, 65, 0.9);
    border-radius: 999px;
    color: #bfdbfe;
    display: inline-flex;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    margin-left: 6px;
    padding: 2px 7px;
    text-transform: uppercase;
}

body.page-tickets .nw-rmm-status-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-rmm-status-grid span {
    color: #94a3b8;
    font-size: 12px;
}

body.page-tickets .nw-rmm-status-grid strong {
    color: #e5eef8;
}

body.page-tickets .nw-rmm-status-grid .is-critical {
    color: #fecaca;
    font-weight: 900;
}

body.page-tickets .desk-rmm-metrics .tone-warning meter::-webkit-meter-optimum-value {
    background: #f59e0b;
}

body.page-tickets .desk-rmm-metrics .tone-critical meter::-webkit-meter-optimum-value {
    background: #ef4444;
}

body.page-tickets .nw-rmm-empty {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.26), #080b10 42%);
    border-color: rgba(148, 163, 184, 0.22);
}

body.page-tickets .nw-related-card header {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

/* Ticket detail operational actions. */
body.page-tickets .nw-next-action-card {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    overflow: hidden;
    position: relative;
}

body.page-tickets .nw-next-action-card::before {
    background: rgba(148, 163, 184, 0.34);
    content: "";
    inset: 10px auto 10px 0;
    position: absolute;
    width: 3px;
}

body.page-tickets .nw-next-action-card__icon {
    align-items: center;
    background: rgba(15, 23, 42, 0.88);
    border: 1px solid rgba(38, 50, 65, 0.92);
    border-radius: 12px;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

body.page-tickets .nw-next-action-card__icon svg {
    height: 17px;
    width: 17px;
}

body.page-tickets .nw-next-action-card span {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-tickets .nw-next-action-card h2 {
    color: #f8fafc;
    font-size: 16px;
    margin: 3px 0;
}

body.page-tickets .nw-next-action-card p {
    color: #cbd5e1;
    line-height: 1.45;
    margin: 0;
}

body.page-tickets .nw-next-action-card .desk-btn {
    white-space: nowrap;
}

body.page-tickets .nw-next-action-card--neutral {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.42), #080b10 48%);
    border-color: rgba(148, 163, 184, 0.24);
}

body.page-tickets .nw-next-action-card--info {
    background: linear-gradient(135deg, rgba(14, 116, 144, 0.18), #080b10 48%);
    border-color: rgba(34, 211, 238, 0.3);
}

body.page-tickets .nw-next-action-card--warning {
    background: linear-gradient(135deg, rgba(120, 53, 15, 0.24), #080b10 48%);
    border-color: rgba(245, 158, 11, 0.38);
}

body.page-tickets .nw-next-action-card--critical {
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.28), #080b10 48%);
    border-color: rgba(248, 113, 113, 0.46);
}

body.page-tickets .nw-next-action-card--success {
    background: linear-gradient(135deg, rgba(20, 83, 45, 0.2), #080b10 48%);
    border-color: rgba(34, 197, 94, 0.34);
}

body.page-tickets .nw-next-action-card--info::before,
body.page-tickets .nw-next-action-card--info .nw-next-action-card__icon svg {
    background: #22d3ee;
    color: #67e8f9;
}

body.page-tickets .nw-next-action-card--warning::before,
body.page-tickets .nw-next-action-card--warning .nw-next-action-card__icon svg {
    background: #f59e0b;
    color: #fbbf24;
}

body.page-tickets .nw-next-action-card--critical::before,
body.page-tickets .nw-next-action-card--critical .nw-next-action-card__icon svg {
    background: #ef4444;
    color: #fecaca;
}

body.page-tickets .nw-next-action-card--success::before,
body.page-tickets .nw-next-action-card--success .nw-next-action-card__icon svg {
    background: #22c55e;
    color: #86efac;
}

body.page-tickets .nw-drawer[hidden] {
    display: none !important;
}

body.page-tickets .desk-resolution-drawer.nw-drawer {
    bottom: 18px;
    box-shadow: -28px 0 90px rgba(0, 0, 0, 0.5);
    display: none;
    gap: 0;
    grid-template-rows: auto minmax(0, 1fr) auto;
    left: auto;
    margin: 0;
    padding: 0;
    position: fixed;
    right: 18px;
    top: 18px;
    width: min(640px, calc(100vw - 36px));
    z-index: 940;
}

body.page-tickets .desk-resolution-drawer.nw-drawer.is-open {
    animation: nwDrawerIn 180ms ease;
    display: grid;
}

body.page-tickets.drawer-open::before {
    background: rgba(2, 6, 23, 0.58);
    content: "";
    inset: 0;
    position: fixed;
    z-index: 930;
}

body.page-tickets .nw-drawer__header,
body.page-tickets .nw-drawer__footer {
    padding: 16px;
}

body.page-tickets .nw-drawer__header {
    align-items: flex-start;
    border-bottom: 1px solid rgba(31, 41, 55, 0.95);
    display: flex;
    gap: 14px;
    justify-content: space-between;
}

body.page-tickets .nw-drawer__header span {
    color: #86efac;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-tickets .nw-drawer__header h2 {
    align-items: center;
    display: flex;
    gap: 8px;
}

body.page-tickets .nw-drawer__body {
    display: grid;
    gap: 14px;
    min-height: 0;
    overflow-y: auto;
    padding: 16px;
}

body.page-tickets .nw-drawer__footer {
    align-items: center;
    background: rgba(8, 11, 16, 0.96);
    border-top: 1px solid rgba(31, 41, 55, 0.95);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-resolution-summary,
body.page-tickets .nw-evidence-box,
body.page-tickets .nw-kb-toggle,
body.page-tickets .nw-checklist {
    background: #080b10;
    border: 1px solid rgba(31, 41, 55, 0.96);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

body.page-tickets .nw-resolution-summary strong,
body.page-tickets .nw-evidence-box strong,
body.page-tickets .nw-checklist strong {
    color: #f8fafc;
}

body.page-tickets .nw-resolution-summary small,
body.page-tickets .nw-evidence-box span {
    color: #94a3b8;
}

body.page-tickets .nw-form-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-form-field {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-form-field--wide {
    grid-column: 1 / -1;
}

body.page-tickets .nw-form-field span,
body.page-tickets .nw-checklist header span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-form-field em {
    color: #fbbf24;
    font-style: normal;
}

body.page-tickets .nw-form-field small {
    color: #fbbf24;
}

body.page-tickets .nw-checklist header,
body.page-tickets .nw-evidence-box {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body.page-tickets .nw-evidence-box div {
    display: grid;
    gap: 3px;
}

body.page-tickets .nw-drawer-warning:not([hidden]) {
    background: rgba(120, 53, 15, 0.26);
    border: 1px solid rgba(245, 158, 11, 0.36);
    border-radius: 12px;
    color: #fde68a;
    display: block;
    font-size: 13px;
    font-weight: 800;
    padding: 10px 12px;
}

body.page-tickets .nw-timeline-event--resolution {
    border-color: rgba(34, 197, 94, 0.28);
}

body.page-tickets .nw-timeline-event--escalation {
    border-color: rgba(245, 158, 11, 0.28);
}

@keyframes nwDrawerIn {
    from { opacity: 0; transform: translateX(18px); }
    to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 760px) {
    body.page-tickets .desk-resolution-drawer.nw-drawer {
        inset: 10px;
        width: auto;
    }

    body.page-tickets .nw-form-grid {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-next-action-card {
        grid-template-columns: auto minmax(0, 1fr);
    }

    body.page-tickets .nw-next-action-card .desk-btn {
        grid-column: 1 / -1;
        justify-self: start;
    }
}

body.page-tickets .nw-related-list {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-related-list button {
    align-items: center;
    background: #080b10;
    border: 1px solid #1f2937;
    border-radius: 12px;
    color: #dbe7ef;
    cursor: pointer;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 9px 10px;
    text-align: left;
}

body.page-tickets .nw-related-list button:hover {
    border-color: rgba(34, 197, 94, 0.28);
    background: rgba(15, 23, 42, 0.72);
}

body.page-tickets .nw-related-list span {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-related-list strong {
    color: #f8fafc;
}

body.page-tickets .nw-related-list em {
    color: #94a3b8;
    font-size: 11px;
    font-style: normal;
    grid-column: 2;
}

body.page-tickets .nw-preview-action-menu {
    background: linear-gradient(180deg, rgba(13, 17, 23, 0.98), rgba(8, 11, 16, 0.98));
    border: 1px solid rgba(38, 50, 65, 0.96);
    border-radius: 14px;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.44);
    display: grid;
    gap: 5px;
    padding: 8px;
    position: fixed;
    width: 240px;
    z-index: 920;
}

body.page-tickets .nw-preview-action-menu--wide {
    width: 320px;
}

body.page-tickets .nw-preview-action-menu strong {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    padding: 4px 6px;
    text-transform: uppercase;
}

body.page-tickets .nw-preview-action-menu button {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #e5eef8;
    cursor: pointer;
    display: grid;
    font: inherit;
    font-size: 12px;
    font-weight: 850;
    gap: 2px;
    padding: 8px;
    text-align: left;
}

body.page-tickets .nw-preview-action-menu button:hover {
    background: rgba(15, 23, 42, 0.78);
    border-color: rgba(38, 50, 65, 0.78);
}

body.page-tickets .nw-preview-action-menu small {
    color: #fbbf24;
    font-size: 10px;
}

body.page-tickets .nw-reason-dialog {
    width: min(520px, calc(100vw - 28px));
}

/* Command palette scroll containment. */
body.page-tickets.nw-command-open {
    overflow: hidden;
}

body.page-tickets .desk-command-palette {
    overflow: hidden;
    overscroll-behavior: contain;
}

body.page-tickets .desk-command-panel {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    max-height: min(760px, calc(100vh - 96px));
    overflow: hidden;
}

body.page-tickets .desk-command-groups {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 4px;
    scrollbar-gutter: stable;
}

/* Ticket detail workspace polish. */
body.page-tickets .desk-detail-layout {
    grid-template-columns: minmax(0, 1fr) clamp(340px, 25vw, 430px);
}

body.page-tickets .desk-overview-side {
    align-content: start;
    max-height: calc(100vh - 190px);
    overflow-y: auto;
    padding-right: 2px;
    scrollbar-gutter: stable;
}

body.page-tickets .nw-next-action-card {
    align-items: stretch;
    display: grid;
    gap: 13px;
    grid-template-columns: 1fr;
    padding: 16px;
}

body.page-tickets .nw-next-action-card::before {
    inset: 0 auto 0 0;
    width: 4px;
}

body.page-tickets .nw-next-action-card__header,
body.page-tickets .nw-next-action-card__footer,
body.page-tickets .nw-side-card__title,
body.page-tickets .nw-side-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

body.page-tickets .nw-next-action-card__header span,
body.page-tickets .nw-side-card__title span {
    color: #7f93aa;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

body.page-tickets .nw-next-action-card__icon {
    height: 34px;
    width: 34px;
}

body.page-tickets .nw-next-action-card__body {
    display: grid;
    gap: 5px;
}

body.page-tickets .nw-next-action-card__body h2 {
    font-size: 18px;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
}

body.page-tickets .nw-next-action-card__body p {
    color: #a9b8ca;
    font-size: 13px;
    line-height: 1.45;
}

body.page-tickets .nw-next-action-card__footer {
    justify-content: stretch;
}

body.page-tickets .nw-next-action-card__footer .desk-btn {
    flex: 1 1 0;
    justify-content: center;
}

body.page-tickets .nw-side-card {
    gap: 12px;
}

body.page-tickets .nw-side-card h2 {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-side-actions {
    justify-content: flex-start;
}

body.page-tickets .nw-side-actions .desk-btn {
    min-height: 32px;
}

body.page-tickets .nw-quick-edit-list {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-quick-edit {
    display: block;
}

body.page-tickets .nw-quick-edit-static {
    align-items: center;
    background: rgba(8, 11, 16, 0.52);
    border: 1px solid rgba(38, 50, 65, 0.66);
    border-radius: 12px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    min-height: 38px;
    padding: 7px 9px;
}

body.page-tickets .nw-quick-edit-static span {
    color: var(--nw-text-muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-quick-edit-static strong {
    color: var(--nw-text-primary);
    font-size: 12px;
}

body.page-tickets .nw-quick-edit > summary {
    align-items: center;
    background: rgba(8, 11, 16, 0.72);
    border: 1px solid rgba(38, 50, 65, 0.86);
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    list-style: none;
    min-height: 42px;
    padding: 8px 10px;
}

body.page-tickets .nw-quick-edit > summary::-webkit-details-marker {
    display: none;
}

body.page-tickets .nw-quick-edit > summary:hover {
    border-color: rgba(125, 211, 252, 0.28);
}

body.page-tickets .nw-quick-edit > summary span {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-side-empty {
    background: #080b10;
    border: 1px solid rgba(38, 50, 65, 0.86);
    border-radius: 12px;
    display: grid;
    gap: 7px;
    padding: 12px;
}

body.page-tickets .nw-side-empty strong {
    color: #f8fafc;
}

body.page-tickets .nw-side-empty span {
    color: #94a3b8;
}

body.page-tickets .nw-detail-tabbar a span {
    align-items: center;
    background: rgba(15, 23, 42, 0.86);
    border: 1px solid rgba(38, 50, 65, 0.9);
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 10px;
    font-weight: 900;
    min-height: 18px;
    padding: 0 7px;
}

body.page-tickets .nw-detail-tabbar a span.state-online {
    border-color: rgba(34, 197, 94, 0.28);
    color: #86efac;
}

body.page-tickets .nw-detail-tabbar a span.state-offline {
    border-color: rgba(248, 113, 113, 0.28);
    color: #fecaca;
}

body.page-tickets .nw-composer-panel {
    border-color: rgba(34, 197, 94, 0.18);
}

body.page-tickets .nw-composer textarea {
    min-height: 150px;
    resize: vertical;
}

body.page-tickets .nw-composer-toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

body.page-tickets .nw-visibility-toggle {
    background: #080b10;
    border: 1px solid rgba(38, 50, 65, 0.95);
    border-radius: 999px;
    display: inline-flex;
    gap: 3px;
    padding: 3px;
}

body.page-tickets .nw-visibility-toggle button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: #94a3b8;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
}

body.page-tickets .nw-visibility-toggle button.is-active {
    background: rgba(34, 197, 94, 0.14);
    color: #dcfce7;
}

body.page-tickets .nw-composer-toolbar small,
body.page-tickets .nw-composer-status {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

body.page-tickets .nw-submit-split {
    display: inline-flex;
    gap: 3px;
}

body.page-tickets .nw-submit-split .desk-btn-primary:first-child {
    border-bottom-right-radius: 8px;
    border-top-right-radius: 8px;
}

body.page-tickets .nw-submit-split summary.desk-btn-primary {
    border-bottom-left-radius: 8px;
    border-top-left-radius: 8px;
    padding-inline: 9px;
}

body.page-tickets .nw-macro-popover .desk-popover {
    min-width: 320px;
}

body.page-tickets .nw-macro-search {
    align-items: center;
    background: #080b10;
    border: 1px solid rgba(38, 50, 65, 0.95);
    border-radius: 10px;
    display: flex;
    gap: 8px;
    padding: 7px 9px;
}

body.page-tickets .nw-macro-search input {
    background: transparent;
    border: 0;
    color: #e5eef8;
    font: inherit;
    outline: 0;
    width: 100%;
}

body.page-tickets .nw-macro-empty {
    color: #94a3b8;
    padding: 8px;
}

body.page-tickets .nw-attachment-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-attachment-pills span {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(38, 50, 65, 0.92);
    border-radius: 999px;
    color: #dbe7ef;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 7px;
    padding: 6px 8px;
}

body.page-tickets .nw-attachment-pills button {
    background: transparent;
    border: 0;
    color: #94a3b8;
    cursor: pointer;
    font: inherit;
    font-weight: 900;
}

body.page-tickets .desk-dropzone span {
    color: #64748b;
}

body.page-tickets .nw-activity-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 10px;
}

body.page-tickets .nw-activity-filters button {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(38, 50, 65, 0.88);
    border-radius: 999px;
    color: #94a3b8;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    gap: 6px;
    min-height: 30px;
    padding: 0 10px;
}

body.page-tickets .nw-activity-filters button.is-active,
body.page-tickets .nw-activity-filters button:hover {
    background: rgba(34, 197, 94, 0.11);
    border-color: rgba(34, 197, 94, 0.28);
    color: #f8fafc;
}

body.page-tickets .nw-activity-filters span,
body.page-tickets .nw-activity-badge {
    background: rgba(8, 11, 16, 0.8);
    border: 1px solid rgba(38, 50, 65, 0.86);
    border-radius: 999px;
    color: #94a3b8;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    padding: 2px 6px;
    text-transform: uppercase;
}

body.page-tickets .nw-activity-total {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 900;
}

body.page-tickets .nw-activity-empty:not([hidden]) {
    display: flex;
}

body.page-tickets .desk-activity-item[hidden] {
    display: none;
}

body.page-tickets .desk-activity-item.activity-comment {
    border-color: rgba(96, 165, 250, 0.22);
}

body.page-tickets .desk-activity-item.activity-rmm {
    border-color: rgba(34, 211, 238, 0.24);
}

body.page-tickets .desk-activity-item.activity-resolution {
    border-color: rgba(34, 197, 94, 0.3);
}

body.page-tickets .desk-activity-item.activity-escalation {
    border-color: rgba(245, 158, 11, 0.32);
}

@media (max-width: 1080px) {
    body.page-tickets .desk-detail-layout {
        grid-template-columns: 1fr;
    }

    body.page-tickets .desk-overview-side {
        max-height: none;
        overflow: visible;
    }
}

/* Ticket detail density pass. */
body.page-tickets .desk-detail-layout {
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) clamp(360px, 25vw, 460px);
}

body.page-tickets .desk-overview-side {
    max-height: calc(100vh - 178px);
    padding-right: 5px;
}

body.page-tickets .desk-overview-side::-webkit-scrollbar,
body.page-tickets .desk-activity-feed::-webkit-scrollbar {
    width: 8px;
}

body.page-tickets .desk-overview-side::-webkit-scrollbar-thumb,
body.page-tickets .desk-activity-feed::-webkit-scrollbar-thumb {
    background: rgba(51, 65, 85, 0.7);
    border-radius: 999px;
}

body.page-tickets .nw-next-action-card {
    border-left: 0;
    gap: 12px;
    padding: 18px;
}

body.page-tickets .nw-next-action-card::before {
    border-radius: 999px;
    bottom: 16px;
    opacity: 0.72;
    top: 16px;
    width: 3px;
}

body.page-tickets .nw-next-action-card__body h2 {
    font-size: 19px;
}

body.page-tickets .nw-next-action-card__body p {
    max-width: 34rem;
}

body.page-tickets .nw-side-card {
    padding: 14px;
}

body.page-tickets .desk-requester-card .desk-person-card {
    gap: 10px;
}

body.page-tickets .nw-side-actions {
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-side-actions .desk-btn,
body.page-tickets .nw-side-actions a.desk-btn {
    flex: 1 1 150px;
    justify-content: center;
}

body.page-tickets .nw-quick-edit-list {
    gap: 7px;
}

body.page-tickets .nw-quick-edit > summary {
    min-height: 38px;
    padding: 7px 9px;
}

body.page-tickets .desk-sla-progress {
    gap: 9px;
}

body.page-tickets .desk-sla-progress strong {
    font-size: 20px;
}

body.page-tickets .nw-composer textarea {
    max-height: 220px;
    min-height: 96px;
    overflow-y: auto;
    padding: 11px 12px;
}

body.page-tickets .nw-composer-panel .desk-panel-title-row {
    margin-bottom: 2px;
}

body.page-tickets .nw-composer-toolbar {
    gap: 8px;
}

body.page-tickets .nw-visibility-toggle button,
body.page-tickets .desk-composer-toolbar .desk-btn {
    min-height: 30px;
}

body.page-tickets .desk-dropzone {
    font-size: 12px;
    min-height: 38px;
    padding: 8px 10px;
}

body.page-tickets .nw-service-checklist {
    gap: 12px;
}

body.page-tickets .nw-service-checklist__progress {
    align-items: flex-end;
    display: grid;
    gap: 2px;
    justify-items: end;
}

body.page-tickets .nw-service-checklist__progress strong {
    color: #f8fafc;
    font-size: 13px;
}

body.page-tickets .nw-service-checklist__progress span {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-service-checklist__bar {
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(38, 50, 65, 0.86);
    border-radius: 999px;
    height: 8px;
    overflow: hidden;
}

body.page-tickets .nw-service-checklist__bar i {
    background: linear-gradient(90deg, rgba(34, 197, 94, 0.72), rgba(125, 211, 252, 0.66));
    display: block;
    height: 100%;
    transition: width 180ms ease;
}

body.page-tickets .nw-service-checklist__grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-service-checklist .desk-check {
    background: rgba(8, 11, 16, 0.62);
    border: 1px solid rgba(38, 50, 65, 0.78);
    border-radius: 12px;
    padding: 8px 9px;
}

body.page-tickets .nw-service-checklist .desk-check.is-done {
    border-color: rgba(34, 197, 94, 0.22);
    color: #86efac;
}

body.page-tickets .nw-service-checklist .desk-check.is-done span {
    color: #7f93aa;
    text-decoration: line-through;
}

body.page-tickets .nw-service-checklist.is-complete {
    border-color: rgba(34, 197, 94, 0.28);
}

body.page-tickets .desk-overview-main .desk-activity-panel .desk-activity-feed {
    max-height: clamp(300px, 36vh, 520px);
}

body.page-tickets .desk-overview-main .desk-activity-panel .desk-activity-item,
body.page-tickets .desk-activity-item {
    border-radius: 12px;
    gap: 9px;
    padding: 9px 10px;
}

body.page-tickets .desk-overview-main .desk-activity-panel .desk-activity-icon,
body.page-tickets .desk-activity-icon {
    height: 28px;
    width: 28px;
}

body.page-tickets .desk-activity-icon svg {
    height: 14px;
    width: 14px;
}

body.page-tickets .desk-activity-item header {
    gap: 7px;
}

body.page-tickets .desk-activity-item header strong {
    font-size: 13px;
}

body.page-tickets .desk-activity-item header small {
    margin-left: auto;
    white-space: nowrap;
}

body.page-tickets .desk-activity-item p {
    font-size: 12px;
    line-height: 1.45;
    margin-top: 3px;
}

body.page-tickets .nw-activity-filters {
    gap: 6px;
}

body.page-tickets .nw-activity-filters button {
    font-size: 11px;
    min-height: 26px;
    padding: 0 8px;
}

body.page-tickets .nw-activity-badge {
    opacity: 0.78;
}

@media (max-width: 1080px) {
    body.page-tickets .desk-detail-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-service-checklist__grid {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-next-action-card__footer {
        flex-direction: column;
    }
}

/* Ticket detail scroll architecture. */
body.page-tickets .main-area:has(.nw-ticket-detail-shell) {
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 0;
}

body.page-tickets .main-area:has(.nw-ticket-detail-shell) > .topbar {
    flex: 0 0 auto;
}

body.page-tickets .content:has(.nw-ticket-detail-shell) {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding: 18px 22px 20px;
}

body.page-tickets .nw-ticket-detail-shell {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 10px;
    min-height: 0;
    overflow: hidden;
}

body.page-tickets .nw-ticket-detail-shell > .desk-ticket-detail-header,
body.page-tickets .nw-ticket-detail-shell > .desk-nav,
body.page-tickets .nw-ticket-detail-tabs {
    flex: 0 0 auto;
}

body.page-tickets .nw-ticket-detail-tabs {
    position: sticky;
    top: 0;
    z-index: 40;
}

body.page-tickets .nw-ticket-detail-body {
    display: grid;
    flex: 1 1 auto;
    gap: 14px;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0 2px 18px 0;
    scrollbar-gutter: stable;
}

body.page-tickets .nw-ticket-detail-body::-webkit-scrollbar,
body.page-tickets .nw-ticket-main::-webkit-scrollbar,
body.page-tickets .nw-ticket-sidebar::-webkit-scrollbar,
body.page-tickets .desk-mini-list::-webkit-scrollbar {
    height: 8px;
    width: 8px;
}

body.page-tickets .nw-ticket-detail-body::-webkit-scrollbar-track,
body.page-tickets .nw-ticket-main::-webkit-scrollbar-track,
body.page-tickets .nw-ticket-sidebar::-webkit-scrollbar-track,
body.page-tickets .desk-mini-list::-webkit-scrollbar-track {
    background: transparent;
}

body.page-tickets .nw-ticket-detail-body::-webkit-scrollbar-thumb,
body.page-tickets .nw-ticket-main::-webkit-scrollbar-thumb,
body.page-tickets .nw-ticket-sidebar::-webkit-scrollbar-thumb,
body.page-tickets .desk-mini-list::-webkit-scrollbar-thumb {
    background: rgba(51, 65, 85, 0.64);
    border-radius: 999px;
}

body.page-tickets .nw-ticket-overview-section {
    height: 100%;
    min-height: min(740px, 100%);
}

body.page-tickets .nw-ticket-detail-grid {
    align-items: stretch;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) clamp(360px, 25vw, 460px);
    height: 100%;
    min-height: min(740px, 100%);
    overflow: hidden;
}

body.page-tickets .nw-ticket-main,
body.page-tickets .nw-ticket-sidebar {
    align-content: start;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: 22px;
    scrollbar-gutter: stable;
}

body.page-tickets .nw-ticket-main {
    min-width: 0;
    padding-right: 3px;
}

body.page-tickets .nw-ticket-sidebar {
    max-height: none;
    min-width: 360px;
    padding-right: 5px;
}

body.page-tickets .desk-overview-main .desk-activity-panel {
    min-height: 0;
}

body.page-tickets .desk-overview-main .desk-activity-panel .desk-activity-feed {
    max-height: none;
    overflow-y: visible;
    padding-right: 0;
}

body.page-tickets .desk-mini-list {
    max-height: 220px;
    overflow-y: auto;
    padding-right: 3px;
}

body.page-tickets .nw-composer textarea {
    max-height: 190px;
    min-height: 78px;
}

body.page-tickets .nw-composer-actions {
    gap: 7px;
}

body.page-tickets .desk-dropzone {
    min-height: 32px;
    padding: 6px 9px;
}

body.page-tickets .nw-service-checklist {
    gap: 10px;
    padding: 13px;
}

body.page-tickets .nw-service-checklist .desk-panel-title-row {
    margin-bottom: 0;
}

body.page-tickets .nw-service-checklist__bar {
    height: 5px;
}

body.page-tickets .nw-service-checklist__grid {
    gap: 6px;
}

body.page-tickets .nw-service-checklist .desk-check {
    min-height: 34px;
    padding: 6px 8px;
}

body.page-tickets .nw-service-checklist .desk-check span {
    font-size: 12px;
    line-height: 1.25;
}

body.page-tickets .nw-activity-filters {
    margin-bottom: 8px;
}

body.page-tickets .nw-activity-filters button {
    min-height: 24px;
}

body.page-tickets .desk-activity-item {
    min-height: 0;
}

@media (max-width: 1180px) {
    body.page-tickets .nw-ticket-detail-grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 38vw);
    }

    body.page-tickets .nw-ticket-sidebar {
        min-width: 340px;
    }
}

@media (max-width: 980px) {
    body.page-tickets .content:has(.nw-ticket-detail-shell),
    body.page-tickets .nw-ticket-detail-shell {
        overflow: visible;
    }

    body.page-tickets .nw-ticket-detail-body {
        overflow-y: visible;
    }

    body.page-tickets .nw-ticket-detail-grid {
        grid-template-columns: 1fr;
        min-height: 0;
        overflow: visible;
    }

    body.page-tickets .nw-ticket-main,
    body.page-tickets .nw-ticket-sidebar {
        max-height: none;
        min-width: 0;
        overflow: visible;
    }
}

/* Ticket detail overflow safety rollback: keep anchors and overview visible. */
body.page-tickets .main-area:has(.nw-ticket-detail-shell) {
    height: auto;
    min-height: 100vh;
}

body.page-tickets .content:has(.nw-ticket-detail-shell) {
    display: block;
    min-height: 0;
    overflow: visible;
    padding: 22px;
}

body.page-tickets .nw-ticket-detail-shell {
    display: grid;
    gap: 12px;
    min-height: 0;
    overflow: visible;
}

body.page-tickets .nw-ticket-detail-body {
    display: grid;
    gap: 14px;
    min-height: 0;
    overflow: visible;
    padding: 0;
}

body.page-tickets .nw-ticket-overview-section {
    height: auto;
    min-height: 0;
}

body.page-tickets .nw-ticket-detail-grid {
    align-items: start;
    height: auto;
    min-height: 0;
    overflow: visible;
}

body.page-tickets .nw-ticket-main {
    min-height: 0;
    overflow: visible;
    padding-bottom: 0;
}

body.page-tickets .nw-ticket-sidebar {
    align-self: start;
    max-height: calc(100vh - 128px);
    min-height: 0;
    overflow-y: auto;
    padding-bottom: 18px;
    position: sticky;
    top: 90px;
}

body.page-tickets .desk-detail-tab-section {
    scroll-margin-top: 118px;
}

/* Ticket detail device/RMM console */
body.page-tickets .nw-device-page {
    display: grid;
    gap: 12px;
    max-width: 100%;
    min-width: 0;
    overflow: visible;
}

body.page-tickets .nw-device-hero,
body.page-tickets .nw-device-section,
body.page-tickets .nw-device-empty,
body.page-tickets .nw-device-risk-strip {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.94), rgba(2, 6, 23, 0.94));
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

body.page-tickets .nw-device-hero {
    align-items: start;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
    min-width: 0;
    padding: 14px;
}

body.page-tickets .nw-device-hero__identity {
    align-items: center;
    display: flex;
    gap: 14px;
    min-width: 0;
}

body.page-tickets .nw-device-hero__icon,
body.page-tickets .nw-device-empty > span {
    align-items: center;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 14px;
    color: #86efac;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

body.page-tickets .nw-device-kicker {
    color: #93a4b8;
    display: block;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    margin-bottom: 3px;
    text-transform: uppercase;
}

body.page-tickets .nw-device-hero h2,
body.page-tickets .nw-device-empty h2 {
    color: #f8fafc;
    font-size: 1.18rem;
    margin: 0;
}

body.page-tickets .nw-device-hero p {
    align-items: center;
    color: #9fb0c4;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 6px 0 0;
}

body.page-tickets .nw-device-status {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    font-weight: 800;
}

body.page-tickets .nw-device-status i {
    background: #94a3b8;
    border-radius: 999px;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, 0.1);
    display: inline-block;
    height: 8px;
    width: 8px;
}

body.page-tickets .nw-device-status--online i { background: #22c55e; box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.14); }
body.page-tickets .nw-device-status--offline i { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.14); }

body.page-tickets .nw-device-hero__meta {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-device-hero__meta span,
body.page-tickets .nw-rmm-confirm-summary span {
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    color: #8ea0b8;
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 8px 9px;
}

body.page-tickets .nw-device-hero__meta strong,
body.page-tickets .nw-rmm-confirm-summary strong {
    color: #e5edf7;
    font-size: 0.86rem;
}

body.page-tickets .nw-device-hero__tags,
body.page-tickets .nw-device-hero__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
}

body.page-tickets .nw-device-hero__tags span {
    background: rgba(56, 189, 248, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.18);
    border-radius: 999px;
    color: #bae6fd;
    font-size: 0.73rem;
    font-weight: 800;
    padding: 5px 9px;
}

body.page-tickets .nw-device-hero__actions {
    grid-column: 1 / -1;
}

body.page-tickets .nw-device-risk-strip {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
    padding: 12px 14px;
}

body.page-tickets .nw-device-risk-strip > div:first-child {
    min-width: 0;
}

body.page-tickets .nw-device-risk-strip span {
    color: #8ea0b8;
    display: block;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.page-tickets .nw-device-risk-strip strong {
    color: #f8fafc;
    display: inline-block;
    font-size: 1rem;
    margin-top: 2px;
}

body.page-tickets .nw-device-risk-strip p {
    color: #b5c4d8;
    margin: 3px 0 0;
    overflow-wrap: anywhere;
}

body.page-tickets .nw-device-risk-strip--low {
    border-color: rgba(34, 197, 94, 0.22);
}

body.page-tickets .nw-device-risk-strip--warning {
    border-color: rgba(245, 158, 11, 0.34);
}

body.page-tickets .nw-device-risk-strip--critical {
    border-color: rgba(239, 68, 68, 0.38);
    box-shadow: inset 3px 0 0 rgba(239, 68, 68, 0.42);
}

body.page-tickets .nw-device-risk-strip__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
}

body.page-tickets .nw-device-section {
    display: grid;
    gap: 10px;
    min-width: 0;
    padding: 12px;
}

body.page-tickets .nw-device-section__title {
    align-items: start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body.page-tickets .nw-device-section__title h3 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    font-size: 0.98rem;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-device-section__title p,
body.page-tickets .nw-device-section__title span,
body.page-tickets .nw-device-empty p {
    color: #9fb0c4;
    margin: 4px 0 0;
}

body.page-tickets .nw-device-metric-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    min-width: 0;
}

body.page-tickets .nw-device-metric-card,
body.page-tickets .nw-device-alert-card,
body.page-tickets .nw-device-script-card,
body.page-tickets .nw-device-history-list article,
body.page-tickets .nw-device-link-list article {
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 12px;
}

body.page-tickets .nw-device-metric-card {
    display: grid;
    gap: 9px;
    min-height: 88px;
    min-width: 0;
    padding: 10px;
}

body.page-tickets .nw-device-metric-card header,
body.page-tickets .nw-device-script-card header,
body.page-tickets .nw-device-alert-card header {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    min-width: 0;
}

body.page-tickets .nw-device-metric-card span,
body.page-tickets .nw-device-metric-card small {
    color: #8ea0b8;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

body.page-tickets .nw-device-metric-card strong {
    color: #f8fafc;
    font-size: 0.96rem;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-device-bar {
    background: rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    height: 6px;
    overflow: hidden;
}

body.page-tickets .nw-device-bar i {
    background: #38bdf8;
    border-radius: inherit;
    display: block;
    height: 100%;
}

body.page-tickets .nw-device-metric-card--ok .nw-device-bar i { background: #22c55e; }
body.page-tickets .nw-device-metric-card--warning .nw-device-bar i { background: #f59e0b; }
body.page-tickets .nw-device-metric-card--critical .nw-device-bar i { background: #ef4444; }
body.page-tickets .nw-device-metric-card--warning { border-color: rgba(245, 158, 11, 0.34); }
body.page-tickets .nw-device-metric-card--critical { border-color: rgba(239, 68, 68, 0.38); }

body.page-tickets .nw-device-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
}

body.page-tickets .nw-device-workbench {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 0.94fr) minmax(320px, 1.06fr);
    min-width: 0;
}

body.page-tickets .nw-device-workbench__left,
body.page-tickets .nw-device-workbench__right {
    display: grid;
    gap: 14px;
    min-width: 0;
}

body.page-tickets .nw-device-alert-list,
body.page-tickets .nw-device-actions-grid,
body.page-tickets .nw-device-script-grid {
    display: grid;
    gap: 10px;
}

body.page-tickets .nw-device-alert-list {
    max-height: 430px;
    overflow-y: auto;
    padding-right: 2px;
}

body.page-tickets .nw-device-alert-card,
body.page-tickets .nw-device-script-card {
    display: grid;
    gap: 7px;
    min-width: 0;
    padding: 10px;
}

body.page-tickets .nw-device-alert-card > strong,
body.page-tickets .nw-device-script-card strong {
    color: #f8fafc;
    min-width: 0;
    overflow-wrap: anywhere;
}

body.page-tickets .nw-device-alert-card > strong {
    align-items: center;
    display: flex;
    gap: 8px;
}

body.page-tickets .nw-device-alert-card > strong svg {
    color: #fbbf24;
    height: 16px;
    width: 16px;
}

body.page-tickets .nw-device-alert-card p,
body.page-tickets .nw-device-alert-card em,
body.page-tickets .nw-device-script-card p,
body.page-tickets .nw-device-script-card small {
    color: #9fb0c4;
    font-style: normal;
    margin: 0;
}

body.page-tickets .nw-device-alert-card--critical { border-color: rgba(239, 68, 68, 0.42); }
body.page-tickets .nw-device-alert-card--high { border-color: rgba(245, 158, 11, 0.42); }
body.page-tickets .nw-device-alert-card--medium { border-color: rgba(56, 189, 248, 0.28); }
body.page-tickets .nw-device-alert-card--info { border-color: rgba(56, 189, 248, 0.24); }
body.page-tickets .nw-device-alert-card--critical { box-shadow: inset 3px 0 0 rgba(239, 68, 68, 0.38); }
body.page-tickets .nw-device-alert-card--high,
body.page-tickets .nw-device-alert-card--medium { box-shadow: inset 3px 0 0 rgba(245, 158, 11, 0.32); }

body.page-tickets .nw-device-actions-grid {
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
    min-width: 0;
}

body.page-tickets .nw-device-action-groups {
    display: grid;
    gap: 10px;
}

body.page-tickets .nw-device-action-group {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-device-action-group > span {
    color: #8ea0b8;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.page-tickets .nw-device-action-button {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 12px;
    color: #dbeafe;
    cursor: pointer;
    display: grid;
    gap: 4px;
    justify-items: start;
    min-height: 64px;
    min-width: 0;
    padding: 9px;
    text-align: left;
    transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

body.page-tickets .nw-device-action-button:hover:not(:disabled) {
    background: rgba(15, 23, 42, 0.95);
    border-color: rgba(34, 197, 94, 0.32);
    transform: translateY(-1px);
}

body.page-tickets .nw-device-action-button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

body.page-tickets .nw-device-action-button i { color: #86efac; }
body.page-tickets .nw-device-action-button small { color: #8ea0b8; }
body.page-tickets .nw-device-action-button.is-sensitive i { color: #fbbf24; }
body.page-tickets .nw-device-action-button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

body.page-tickets .nw-device-scripts .nw-device-section__title {
    align-items: center;
    flex-wrap: wrap;
}

body.page-tickets .nw-device-script-search,
body.page-tickets .nw-device-empty__search {
    align-items: center;
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    color: #8ea0b8;
    display: flex;
    gap: 8px;
    min-width: min(220px, 100%);
    padding: 8px 11px;
}

body.page-tickets .nw-device-script-search input,
body.page-tickets .nw-device-empty__search input {
    background: transparent;
    border: 0;
    color: #e5edf7;
    min-width: 0;
    outline: 0;
    width: 100%;
}

body.page-tickets .nw-device-script-grid {
    grid-template-columns: 1fr;
}

body.page-tickets .nw-device-script-card {
    align-items: center;
    grid-template-columns: minmax(0, 1fr) auto;
}

body.page-tickets .nw-device-script-card header,
body.page-tickets .nw-device-script-card p,
body.page-tickets .nw-device-script-card small {
    grid-column: 1;
}

body.page-tickets .nw-device-script-card .desk-btn {
    grid-column: 2;
    grid-row: 1 / span 3;
    white-space: nowrap;
}

body.page-tickets .nw-device-risk-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

body.page-tickets .nw-device-risk-filters button {
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    color: #9fb0c4;
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 800;
    padding: 6px 9px;
}

body.page-tickets .nw-device-risk-filters button.is-active {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.34);
    color: #bbf7d0;
}

body.page-tickets .nw-device-script-card header span,
body.page-tickets .nw-device-alert-card header span {
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
    padding: 4px 7px;
    text-transform: uppercase;
}

body.page-tickets .risk-low { background: rgba(34, 197, 94, 0.12); color: #bbf7d0; }
body.page-tickets .risk-medium { background: rgba(245, 158, 11, 0.12); color: #fde68a; }
body.page-tickets .risk-high { background: rgba(239, 68, 68, 0.12); color: #fecaca; }

body.page-tickets .nw-device-history-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end;
}

body.page-tickets .nw-device-history-filters button {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    color: #9fb0c4;
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 800;
    padding: 6px 9px;
}

body.page-tickets .nw-device-history-filters button.is-active {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.34);
    color: #bbf7d0;
}

body.page-tickets .nw-device-history-list {
    display: grid;
    gap: 8px;
    max-height: 420px;
    overflow-y: auto;
    padding-right: 2px;
}

body.page-tickets .nw-device-history-list article,
body.page-tickets .nw-device-link-list article {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-width: 0;
    padding: 8px 10px;
}

body.page-tickets .nw-device-history-list i {
    color: #86efac;
}

body.page-tickets .nw-device-history-list strong,
body.page-tickets .nw-device-link-list strong {
    color: #f8fafc;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-device-history-list span,
body.page-tickets .nw-device-link-list span,
body.page-tickets .nw-device-link-list small {
    color: #8ea0b8;
}

body.page-tickets .nw-device-history-list em {
    color: #bae6fd;
    font-style: normal;
    font-weight: 800;
}

body.page-tickets .nw-device-empty {
    align-items: center;
    display: grid;
    gap: 13px;
    justify-items: center;
    min-height: 430px;
    padding: 34px;
    text-align: center;
}

body.page-tickets .nw-device-link-list {
    display: grid;
    gap: 10px;
    max-width: 720px;
    width: 100%;
}

body.page-tickets .nw-rmm-confirm-modal {
    align-items: center;
    display: grid;
    inset: 0;
    justify-items: center;
    position: fixed;
    z-index: 80;
}

body.page-tickets .nw-rmm-confirm-modal[hidden] {
    display: none;
}

body.page-tickets .nw-rmm-confirm-modal__backdrop {
    background: rgba(2, 6, 23, 0.74);
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-rmm-confirm-modal__dialog {
    background: #050b14;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.44);
    display: grid;
    gap: 14px;
    max-width: min(560px, calc(100vw - 32px));
    padding: 18px;
    position: relative;
    width: 100%;
}

body.page-tickets .nw-rmm-confirm-modal__dialog header {
    align-items: start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body.page-tickets .nw-rmm-confirm-modal__dialog header span {
    color: #8ea0b8;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

body.page-tickets .nw-rmm-confirm-modal__dialog h3 {
    color: #f8fafc;
    margin: 2px 0 4px;
}

body.page-tickets .nw-rmm-confirm-modal__dialog p {
    color: #9fb0c4;
    margin: 0;
}

body.page-tickets .nw-rmm-confirm-summary {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-rmm-confirm-modal__dialog label {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-rmm-confirm-modal__dialog textarea {
    background: rgba(2, 6, 23, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 12px;
    color: #e5edf7;
    min-height: 84px;
    padding: 10px;
    resize: vertical;
}

body.page-tickets .nw-rmm-confirm-check {
    align-items: center;
    display: flex !important;
    color: #cbd5e1;
}

body.page-tickets .nw-rmm-confirm-modal__dialog footer {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-rmm-message-templates {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-rmm-message-templates button {
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    color: #cbd5e1;
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 800;
    padding: 7px 10px;
}

body.page-tickets .nw-rmm-message-templates button:hover {
    border-color: rgba(34, 197, 94, 0.3);
    color: #f8fafc;
}

@media (max-width: 1180px) {
    body.page-tickets .nw-device-hero,
    body.page-tickets .nw-device-grid,
    body.page-tickets .nw-device-workbench {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-device-metric-grid,
    body.page-tickets .nw-device-script-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-device-hero__meta,
    body.page-tickets .nw-device-metric-grid,
    body.page-tickets .nw-device-actions-grid,
    body.page-tickets .nw-device-script-grid,
    body.page-tickets .nw-rmm-confirm-summary {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-device-section__title {
        display: grid;
    }
}

/* Ticket detail overview fine tuning */
body.page-tickets .nw-ticket-main {
    padding-bottom: 44px;
}

body.page-tickets .nw-activity-empty[hidden] {
    display: none !important;
}

body.page-tickets .nw-activity-empty:not([hidden]) {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 8px;
}

body.page-tickets .nw-composer {
    transition: gap 180ms ease;
}

body.page-tickets .nw-composer textarea {
    height: 78px;
    max-height: 220px;
    min-height: 78px;
    overflow-y: auto;
    transition: height 180ms ease, min-height 180ms ease, border-color 180ms ease, background 180ms ease;
}

body.page-tickets .nw-composer.is-expanded textarea,
body.page-tickets .nw-composer-panel.is-expanded .nw-composer textarea {
    min-height: 150px;
}

body.page-tickets .nw-composer-panel:not(.is-expanded) .desk-panel-title-row {
    margin-bottom: 0;
}

body.page-tickets .nw-composer-panel:not(.is-expanded) .desk-dropzone {
    opacity: 0.72;
}

body.page-tickets .nw-composer-panel:not(.is-expanded) .nw-composer-toolbar {
    margin-top: -2px;
}

body.page-tickets .nw-service-checklist {
    border-color: rgba(148, 163, 184, 0.16);
}

body.page-tickets .nw-service-checklist__progress strong {
    letter-spacing: 0.01em;
}

body.page-tickets .nw-service-checklist__grid {
    align-items: stretch;
}

body.page-tickets .nw-service-checklist .desk-check {
    align-items: center;
    background: rgba(8, 11, 16, 0.48);
    border-color: rgba(148, 163, 184, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.015);
    display: flex;
    gap: 8px;
}

body.page-tickets .nw-service-checklist .desk-check:hover {
    border-color: rgba(148, 163, 184, 0.22);
}

body.page-tickets .nw-service-checklist .desk-check input {
    accent-color: #22c55e;
    flex: 0 0 auto;
    height: 14px;
    margin: 0;
    width: 14px;
}

body.page-tickets .nw-service-checklist .desk-check span {
    color: #d6e3f0;
    display: block;
}

body.page-tickets .nw-service-checklist .desk-check.is-done {
    background: rgba(15, 23, 42, 0.42);
    border-color: rgba(34, 197, 94, 0.18);
}

body.page-tickets .nw-service-checklist .desk-check.is-done span {
    color: #7d8fa6;
    text-decoration: line-through;
    text-decoration-thickness: 1px;
}

/* RMM device compact polish */
body.page-tickets .nw-device-risk-strip {
    padding: 10px 12px;
}

body.page-tickets .nw-device-risk-strip strong {
    align-items: center;
    display: inline-flex;
    gap: 7px;
}

body.page-tickets .nw-device-risk-strip strong i {
    background: #22c55e;
    border-radius: 999px;
    display: inline-block;
    height: 9px;
    width: 9px;
}

body.page-tickets .nw-device-risk-strip--warning strong i {
    background: #f59e0b;
}

body.page-tickets .nw-device-risk-strip--critical strong i {
    background: #ef4444;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.12);
}

body.page-tickets .nw-device-risk-strip p {
    font-size: 0.82rem;
}

body.page-tickets .nw-device-alert-list {
    max-height: none;
    overflow: visible;
    padding-right: 0;
}

body.page-tickets .nw-device-alert-card {
    gap: 5px;
    padding: 9px 10px;
}

body.page-tickets .nw-device-alert-card header small,
body.page-tickets .nw-device-alert-card p,
body.page-tickets .nw-device-alert-card em {
    font-size: 0.76rem;
    line-height: 1.3;
}

body.page-tickets .nw-device-alert-card .desk-btn {
    justify-self: end;
    min-height: 28px;
    padding: 5px 9px;
}

body.page-tickets .nw-device-show-all {
    background: transparent;
    border: 0;
    color: #86efac;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 900;
    justify-self: start;
    padding: 2px 0;
}

body.page-tickets .nw-device-action-group {
    gap: 6px;
}

body.page-tickets .nw-device-actions-grid {
    gap: 6px;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

body.page-tickets .nw-device-action-button {
    gap: 2px;
    min-height: 52px;
    padding: 8px;
}

body.page-tickets .nw-device-action-button svg {
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-device-action-button span {
    font-size: 0.78rem;
}

body.page-tickets .nw-device-action-button small {
    font-size: 0.68rem;
}

body.page-tickets .nw-device-action-button:not(.is-sensitive) {
    background: rgba(15, 23, 42, 0.52);
    border-color: rgba(148, 163, 184, 0.12);
}

body.page-tickets .nw-device-action-button.is-sensitive {
    border-color: rgba(245, 158, 11, 0.24);
}

body.page-tickets .nw-device-script-card {
    gap: 4px 10px;
    min-height: 0;
    padding: 8px 9px;
}

body.page-tickets .nw-device-script-card header {
    gap: 6px;
}

body.page-tickets .nw-device-script-card p,
body.page-tickets .nw-device-script-card small {
    font-size: 0.74rem;
    line-height: 1.25;
}

body.page-tickets .nw-device-script-card .desk-btn {
    min-height: 28px;
    padding: 5px 9px;
}

body.page-tickets .nw-device-history-list {
    max-height: 360px;
}

body.page-tickets .nw-device-history-list article {
    padding: 7px 9px;
}

/* Ticket detail attachments/evidence console */
body.page-tickets .nw-attachments-page {
    display: grid;
    gap: 12px;
    min-width: 0;
}

body.page-tickets .nw-attachments-header,
body.page-tickets .nw-attachment-dropzone,
body.page-tickets .nw-attachment-primary,
body.page-tickets .nw-attachment-toolbar,
body.page-tickets .nw-attachments-empty {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 0.9));
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 14px;
}

body.page-tickets .nw-attachments-header {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto auto;
    padding: 14px;
}

body.page-tickets .nw-attachments-header h2 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-attachments-header p {
    color: #9fb0c4;
    margin: 4px 0 0;
}

body.page-tickets .nw-attachments-header__meta {
    color: #8ea0b8;
    display: grid;
    font-size: 0.78rem;
    gap: 2px;
    justify-items: end;
}

body.page-tickets .nw-attachments-header__meta strong {
    color: #f8fafc;
}

body.page-tickets .nw-attachments-header__actions,
body.page-tickets .nw-attachment-filters,
body.page-tickets .nw-attachment-preview-modal footer {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-attachment-primary {
    align-items: center;
    border-color: rgba(34, 197, 94, 0.26);
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 10px 12px;
}

body.page-tickets .nw-attachment-primary > span {
    align-items: center;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.25);
    border-radius: 12px;
    color: #86efac;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

body.page-tickets .nw-attachment-primary strong {
    color: #f8fafc;
}

body.page-tickets .nw-attachment-primary p {
    color: #9fb0c4;
    margin: 2px 0 0;
}

body.page-tickets .nw-attachment-dropzone {
    align-items: center;
    border-style: dashed;
    display: grid;
    gap: 12px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 13px;
    transition: border-color 0.18s ease, background 0.18s ease;
}

body.page-tickets .nw-attachment-dropzone.is-dragging {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.42);
}

body.page-tickets .nw-attachment-dropzone > i {
    color: #86efac;
}

body.page-tickets .nw-attachment-dropzone strong {
    color: #f8fafc;
    display: block;
}

body.page-tickets .nw-attachment-dropzone span {
    color: #9fb0c4;
}

body.page-tickets .nw-attachment-toolbar {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(220px, 1fr) minmax(0, 1.5fr) auto;
    padding: 10px;
}

body.page-tickets .nw-attachment-search {
    align-items: center;
    background: rgba(2, 6, 23, 0.66);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: #8ea0b8;
    display: flex;
    gap: 8px;
    min-width: 0;
    padding: 8px 10px;
}

body.page-tickets .nw-attachment-search input,
body.page-tickets .nw-attachment-sort select {
    background: transparent;
    border: 0;
    color: #e5edf7;
    outline: 0;
    width: 100%;
}

body.page-tickets .nw-attachment-filters button {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: #9fb0c4;
    cursor: pointer;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 6px 9px;
}

body.page-tickets .nw-attachment-filters button.is-active {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.32);
    color: #bbf7d0;
}

body.page-tickets .nw-attachment-sort {
    align-items: center;
    background: rgba(2, 6, 23, 0.66);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    color: #8ea0b8;
    display: flex;
    gap: 8px;
    padding: 7px 9px;
}

body.page-tickets .nw-attachment-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    min-width: 0;
}

body.page-tickets .nw-attachment-card {
    background: rgba(2, 6, 23, 0.64);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    min-width: 0;
    padding: 10px;
    position: relative;
}

body.page-tickets .nw-attachment-card.is-primary {
    border-color: rgba(34, 197, 94, 0.3);
    box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.34);
}

body.page-tickets .nw-attachment-card__main {
    align-items: center;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 0;
    text-align: left;
}

body.page-tickets .nw-attachment-thumb {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 12px;
    color: #93c5fd;
    display: inline-flex;
    height: 52px;
    justify-content: center;
    width: 52px;
}

body.page-tickets .nw-attachment-thumb--image { color: #86efac; }
body.page-tickets .nw-attachment-thumb--pdf { color: #fca5a5; }
body.page-tickets .nw-attachment-thumb--log { color: #67e8f9; }

body.page-tickets .nw-attachment-info {
    display: grid;
    gap: 3px;
    min-width: 0;
}

body.page-tickets .nw-attachment-info strong {
    color: #f8fafc;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-attachment-info small,
body.page-tickets .nw-attachment-info em {
    color: #8ea0b8;
    font-style: normal;
}

body.page-tickets .nw-attachment-primary-badge {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.22);
    border-radius: 999px;
    color: #bbf7d0;
    font-size: 0.68rem;
    font-weight: 900;
    grid-column: 1 / -1;
    justify-self: start;
    padding: 4px 7px;
}

body.page-tickets .nw-attachment-actions {
    display: flex;
    gap: 5px;
    justify-content: flex-end;
    opacity: 0.72;
    transition: opacity 0.18s ease;
}

body.page-tickets .nw-attachment-card:hover .nw-attachment-actions {
    opacity: 1;
}

body.page-tickets .nw-attachment-actions button {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    height: 28px;
    justify-content: center;
    width: 28px;
}

body.page-tickets .nw-attachment-upload-progress {
    background: rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    grid-column: 1 / -1;
    height: 5px;
    overflow: hidden;
}

body.page-tickets .nw-attachment-upload-progress i {
    background: #22c55e;
    display: block;
    height: 100%;
    width: 0%;
}

body.page-tickets .nw-attachments-empty {
    align-items: center;
    display: grid;
    gap: 9px;
    justify-items: center;
    padding: 28px;
    text-align: center;
}

body.page-tickets .nw-attachments-empty[hidden] {
    display: none;
}

body.page-tickets .nw-attachments-empty i {
    color: #86efac;
}

body.page-tickets .nw-attachment-preview-modal {
    align-items: center;
    display: grid;
    inset: 0;
    justify-items: center;
    position: fixed;
    z-index: 85;
}

body.page-tickets .nw-attachment-preview-modal[hidden] {
    display: none;
}

body.page-tickets .nw-attachment-preview-modal__backdrop {
    background: rgba(2, 6, 23, 0.78);
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-attachment-preview-modal__dialog {
    background: #050b14;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.44);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) 240px;
    max-height: min(760px, calc(100vh - 42px));
    max-width: min(980px, calc(100vw - 42px));
    min-width: min(760px, calc(100vw - 42px));
    overflow: hidden;
    padding: 14px;
    position: relative;
}

body.page-tickets .nw-attachment-preview-modal__dialog header,
body.page-tickets .nw-attachment-preview-modal__dialog footer {
    grid-column: 1 / -1;
}

body.page-tickets .nw-attachment-preview-modal__dialog header {
    align-items: start;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-attachment-preview-modal__dialog h3 {
    color: #f8fafc;
    margin: 2px 0;
}

body.page-tickets .nw-attachment-preview-modal__dialog header span,
body.page-tickets .nw-attachment-preview-modal__dialog p {
    color: #9fb0c4;
}

body.page-tickets .nw-attachment-preview-modal__dialog main {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 360px;
}

body.page-tickets .nw-attachment-preview-stage {
    align-items: center;
    background: rgba(2, 6, 23, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 14px;
    color: #cbd5e1;
    display: grid;
    justify-items: center;
    min-height: 360px;
    overflow: auto;
    padding: 18px;
}

body.page-tickets .nw-attachment-preview-stage pre {
    color: #c4f1ff;
    font-family: Consolas, monospace;
    font-size: 0.82rem;
    margin: 0;
    white-space: pre-wrap;
    width: 100%;
}

body.page-tickets .nw-preview-image,
body.page-tickets .nw-preview-file {
    align-items: center;
    color: #cbd5e1;
    display: grid;
    gap: 10px;
    justify-items: center;
    text-align: center;
}

body.page-tickets .nw-preview-image i,
body.page-tickets .nw-preview-file i {
    color: #86efac;
    height: 54px;
    width: 54px;
}

body.page-tickets .nw-preview-image strong,
body.page-tickets .nw-preview-file strong {
    color: #f8fafc;
    font-size: 1.05rem;
}

body.page-tickets .nw-attachment-preview-modal__dialog aside {
    align-content: start;
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-attachment-preview-modal__dialog aside div {
    background: rgba(15, 23, 42, 0.68);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    display: grid;
    gap: 3px;
    padding: 9px;
}

body.page-tickets .nw-attachment-preview-modal__dialog aside span {
    color: #8ea0b8;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-attachment-preview-modal__dialog aside strong {
    color: #f8fafc;
}

/* Overview evidence + related summaries */
body.page-tickets .nw-ticket-context-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

body.page-tickets .nw-ticket-context-grid--tabs {
    align-items: start;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-width: 0;
}

body.page-tickets .nw-ticket-evidence-panel,
body.page-tickets .nw-ticket-related-panel {
    min-width: 0;
}

body.page-tickets .nw-ticket-evidence-panel > .nw-attachments-page,
body.page-tickets .nw-ticket-related-panel > .nw-related-page {
    margin-inline: 0;
    max-width: 100%;
    min-width: 0;
    width: 100%;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachments-page,
body.page-tickets .nw-ticket-related-panel .nw-related-page {
    gap: 10px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachments-header {
    align-items: start;
    gap: 9px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 12px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachments-header__actions {
    grid-column: 1 / -1;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachments-header__actions .desk-btn {
    min-height: 28px;
    padding: 5px 9px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-dropzone {
    gap: 9px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 9px 10px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-dropzone strong {
    font-size: 0.86rem;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-dropzone span {
    display: none;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-dropzone .desk-btn {
    min-height: 28px;
    padding: 5px 10px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-toolbar {
    align-items: start;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 8px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-filters {
    grid-column: 1 / -1;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-search {
    min-height: 32px;
    padding: 6px 9px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-filters button {
    font-size: 0.68rem;
    padding: 4px 7px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-sort {
    min-height: 32px;
    padding: 5px 8px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-sort span {
    display: none;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-primary {
    padding: 8px 10px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-grid {
    grid-template-columns: 1fr;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-card {
    align-items: center;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 8px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-card__main {
    grid-template-columns: auto minmax(0, 1fr) auto;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-thumb {
    border-radius: 9px;
    height: 34px;
    width: 34px;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-primary-badge {
    grid-column: auto;
    white-space: nowrap;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-actions {
    opacity: 0.56;
}

body.page-tickets .nw-ticket-evidence-panel .nw-attachment-actions button {
    height: 26px;
    width: 26px;
}

body.page-tickets .nw-ticket-evidence-summary,
body.page-tickets .nw-ticket-related-summary {
    align-content: start;
    display: grid;
    gap: 12px;
    min-width: 0;
    padding: 14px;
}

body.page-tickets .nw-ticket-evidence-summary > header,
body.page-tickets .nw-ticket-related-summary > header,
body.page-tickets .nw-related-header {
    align-items: start;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

body.page-tickets .nw-ticket-evidence-summary h2,
body.page-tickets .nw-ticket-related-summary h2,
body.page-tickets .nw-related-header h2 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    font-size: 1rem;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-ticket-evidence-summary p,
body.page-tickets .nw-ticket-related-summary p,
body.page-tickets .nw-related-header p {
    color: #9fb0c4;
    margin: 4px 0 0;
}

body.page-tickets .nw-ticket-evidence-summary > header > span,
body.page-tickets .nw-ticket-related-summary > header > span {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: #cbd5e1;
    font-size: 0.72rem;
    font-weight: 900;
    padding: 5px 8px;
    white-space: nowrap;
}

body.page-tickets .nw-summary-primary-evidence {
    align-items: center;
    background: rgba(34, 197, 94, 0.07);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 12px;
    display: grid;
    gap: 9px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 10px;
}

body.page-tickets .nw-summary-primary-evidence > span {
    align-items: center;
    background: rgba(34, 197, 94, 0.12);
    border-radius: 10px;
    color: #86efac;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

body.page-tickets .nw-summary-primary-evidence strong,
body.page-tickets .nw-summary-list strong,
body.page-tickets .nw-related-compact-groups strong,
body.page-tickets .nw-related-item strong {
    color: #f8fafc;
}

body.page-tickets .nw-summary-primary-evidence small,
body.page-tickets .nw-summary-list span,
body.page-tickets .nw-related-compact-groups span {
    color: #8ea0b8;
}

body.page-tickets .nw-summary-list,
body.page-tickets .nw-related-compact-groups {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-summary-list article {
    align-items: center;
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto auto auto auto;
    min-width: 0;
    padding: 8px;
}

body.page-tickets .nw-summary-list article > i {
    color: #86efac;
}

body.page-tickets .nw-summary-list article > div {
    min-width: 0;
}

body.page-tickets .nw-summary-list strong,
body.page-tickets .nw-related-compact-groups span,
body.page-tickets .nw-related-item span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-summary-list em,
body.page-tickets .nw-summary-list b,
body.page-tickets .nw-related-compact-groups em,
body.page-tickets .nw-related-item em {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 999px;
    color: #9fb0c4;
    font-size: 0.68rem;
    font-style: normal;
    font-weight: 900;
    padding: 3px 6px;
}

body.page-tickets .nw-summary-list b {
    color: #bbf7d0;
}

body.page-tickets .nw-summary-list button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
}

body.page-tickets .nw-ticket-evidence-summary footer,
body.page-tickets .nw-ticket-related-summary footer {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-related-compact-groups section {
    display: grid;
    gap: 6px;
}

body.page-tickets .nw-related-compact-groups h3 {
    color: #9fb0c4;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    margin: 0;
    text-transform: uppercase;
}

body.page-tickets .nw-related-compact-groups a,
body.page-tickets .nw-related-item {
    align-items: center;
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-width: 0;
    padding: 8px;
    text-decoration: none;
}

/* Constrain full attachments/related tabs on wide screens */
body.page-tickets #attachments > .nw-attachments-page,
body.page-tickets #related > .nw-related-page {
    margin-inline: auto;
    max-width: 1280px;
    width: min(100%, 1280px);
}

body.page-tickets .nw-related-page {
    display: grid;
    gap: 14px;
}

body.page-tickets .nw-related-header {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 0.9));
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 14px;
    padding: 14px;
}

body.page-tickets .nw-related-header > div:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-related-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

body.page-tickets .nw-related-group {
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    padding: 12px;
}

body.page-tickets .nw-related-group header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-related-group h3 {
    color: #f8fafc;
    font-size: 0.9rem;
    margin: 0;
}

body.page-tickets .nw-related-group header span {
    color: #8ea0b8;
    font-weight: 900;
}

body.page-tickets .nw-related-preview-shell {
    margin-top: 0;
}

body.page-tickets .nw-related-list {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-related-groups {
    display: grid;
    gap: 10px;
}

body.page-tickets .nw-related-item--selectable {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 8px;
}

body.page-tickets .nw-related-item--selectable > button {
    align-items: center;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: grid;
    gap: 6px;
    grid-template-columns: auto minmax(0, 1fr) auto auto auto;
    min-width: 0;
    padding: 0;
    text-align: left;
}

body.page-tickets .nw-related-select {
    align-items: center;
    display: inline-flex;
}

body.page-tickets .nw-related-select input {
    accent-color: #22c55e;
    cursor: pointer;
    height: 14px;
    width: 14px;
}

body.page-tickets .nw-related-item--selectable > button small,
body.page-tickets .nw-related-item--selectable > button i,
body.page-tickets .nw-related-preview-empty p,
body.page-tickets .nw-related-preview-shell p {
    color: #8ea0b8;
    font-style: normal;
}

body.page-tickets .nw-related-item--selectable > button i {
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.18);
    border-radius: 999px;
    color: #bae6fd;
    font-size: 0.68rem;
    font-weight: 900;
    padding: 3px 6px;
    white-space: nowrap;
}

body.page-tickets .nw-related-item--selectable > div {
    display: flex;
    gap: 5px;
}

body.page-tickets .nw-related-item--selectable > div button,
body.page-tickets .nw-related-item--selectable > div a {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    height: 26px;
    justify-content: center;
    width: 26px;
}

body.page-tickets .nw-related-action {
    align-items: center;
    display: inline-flex;
    height: 28px;
    justify-content: center;
    width: 28px;
}

body.page-tickets .nw-related-action i {
    align-items: center;
    display: inline-flex;
    font-size: 14px;
    justify-content: center;
    line-height: 1;
}

body.page-tickets .nw-related-item--selectable > div button:hover,
body.page-tickets .nw-related-item--selectable > div a:hover {
    background: rgba(30, 41, 59, 0.92);
    border-color: rgba(34, 197, 94, 0.28);
    color: #f8fafc;
}

body.page-tickets .nw-related-item--selectable > div button[disabled],
body.page-tickets .nw-related-item--selectable > div button[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.42;
}

body.page-tickets .nw-related-action svg,
body.page-tickets .nw-related-item--selectable > div svg {
    display: block;
    fill: none;
    height: 14px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    width: 14px;
}

body.page-tickets .nw-related-item--selectable.is-active {
    border-color: rgba(34, 197, 94, 0.35);
    box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.34);
}

body.page-tickets .nw-related-item--selected {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.3);
}

body.page-tickets .desk-btn.is-disabled {
    cursor: not-allowed;
    opacity: 0.48;
}

body.page-tickets .nw-related-total {
    align-items: center;
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 900;
    padding: 5px 8px;
}

body.page-tickets .nw-related-preview-shell {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.86), rgba(2, 6, 23, 0.82));
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

body.page-tickets .nw-related-preview-empty {
    display: grid;
    gap: 8px;
    justify-items: center;
    min-height: 150px;
    padding: 18px;
    text-align: center;
}

body.page-tickets .nw-related-preview-empty i {
    color: #86efac;
}

body.page-tickets .nw-related-preview-shell h3 {
    color: #f8fafc;
    margin: 0;
}

body.page-tickets .nw-related-preview-shell dl {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

body.page-tickets .nw-related-preview-shell div[data-related-preview-actions],
body.page-tickets .nw-related-preview-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-related-preview-shell dt {
    color: #8ea0b8;
    font-size: 0.68rem;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-related-preview-shell dd {
    color: #f8fafc;
    margin: 2px 0 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-related-modal {
    align-items: center;
    display: grid;
    inset: 0;
    justify-items: center;
    position: fixed;
    z-index: 90;
}

body.page-tickets .nw-related-modal[hidden] {
    display: none;
}

body.page-tickets .nw-related-modal__backdrop {
    background: rgba(2, 6, 23, 0.76);
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-related-modal__dialog {
    background: #050b14;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.44);
    display: grid;
    gap: 12px;
    max-height: min(760px, calc(100vh - 42px));
    max-width: min(620px, calc(100vw - 32px));
    overflow: auto;
    padding: 16px;
    position: relative;
    width: 100%;
}

body.page-tickets .nw-related-modal__dialog header {
    align-items: start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body.page-tickets .nw-related-modal__dialog header span,
body.page-tickets .nw-related-modal__dialog .nw-form-field > span {
    color: #8ea0b8;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.page-tickets .nw-related-modal__dialog h3 {
    color: #f8fafc;
    margin: 2px 0 4px;
}

body.page-tickets .nw-related-modal__dialog p {
    color: #9fb0c4;
    margin: 0;
}

body.page-tickets .nw-related-search,
body.page-tickets .nw-form-field {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-related-search {
    align-items: center;
    background: rgba(2, 6, 23, 0.66);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 999px;
    color: #8ea0b8;
    display: flex;
    padding: 8px 11px;
}

body.page-tickets .nw-related-search input,
body.page-tickets .nw-form-field select,
body.page-tickets .nw-form-field textarea {
    background: rgba(2, 6, 23, 0.7);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 10px;
    color: #e5edf7;
    outline: 0;
    padding: 9px;
    width: 100%;
}

body.page-tickets .nw-related-search input {
    background: transparent;
    border: 0;
    padding: 0;
}

body.page-tickets .nw-form-field textarea {
    min-height: 82px;
    resize: vertical;
}

body.page-tickets .nw-related-link-results,
body.page-tickets .nw-merge-list {
    display: grid;
    gap: 7px;
    max-height: 230px;
    overflow-y: auto;
}

body.page-tickets .nw-related-link-results label,
body.page-tickets .nw-merge-list label,
body.page-tickets .nw-related-check {
    align-items: center;
    background: rgba(15, 23, 42, 0.66);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 10px;
    color: #cbd5e1;
    display: flex;
    gap: 9px;
    padding: 8px;
}

body.page-tickets .nw-related-link-results strong,
body.page-tickets .nw-merge-list strong {
    color: #f8fafc;
    display: block;
}

body.page-tickets .nw-related-link-results small,
body.page-tickets .nw-merge-list small {
    color: #8ea0b8;
}

body.page-tickets .nw-related-modal__dialog footer {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-reference-solution__body {
    background: rgba(15, 23, 42, 0.66);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 12px;
    color: #dbeafe;
    line-height: 1.5;
    padding: 12px;
}

@media (max-width: 900px) {
    body.page-tickets .nw-attachments-header,
    body.page-tickets .nw-attachment-toolbar,
    body.page-tickets .nw-attachment-preview-modal__dialog,
    body.page-tickets .nw-ticket-context-grid {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-attachments-header__meta {
        justify-items: start;
    }

    body.page-tickets .nw-attachment-preview-modal__dialog main {
        min-height: 260px;
    }
}

body.page-tickets .nw-audit-drawer {
    background: transparent;
    border: 0;
    border-radius: 0;
    display: grid;
    gap: 0;
    inset: 0;
    margin: 0;
    padding: 0;
    place-items: stretch end;
    position: fixed;
    z-index: 970;
}

body.page-tickets .nw-audit-drawer[hidden] {
    display: none !important;
}

body.page-tickets .nw-audit-backdrop {
    background: rgba(2, 6, 23, 0.68);
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-audit-panel {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(5, 10, 18, 0.99));
    border: 1px solid rgba(51, 65, 85, 0.9);
    border-radius: 18px;
    box-shadow: -30px 0 90px rgba(0, 0, 0, 0.58), inset 0 1px 0 rgba(255, 255, 255, 0.03);
    display: grid;
    gap: 12px;
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    height: calc(100vh - 28px);
    margin: 14px;
    min-height: 0;
    overflow: hidden;
    padding: 16px;
    position: relative;
    width: min(920px, calc(100vw - 28px));
}

body.page-tickets .nw-audit-drawer.is-open .nw-audit-panel {
    animation: nwDrawerIn 180ms ease;
}

body.page-tickets .nw-audit-header {
    align-items: flex-start;
    border-bottom: 1px solid rgba(30, 41, 59, 0.92);
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding-bottom: 14px;
}

body.page-tickets .nw-audit-header h2 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    font-size: 20px;
    gap: 8px;
    margin: 4px 0;
}

body.page-tickets .nw-audit-header p {
    color: #9fb0c3;
    margin: 0;
}

body.page-tickets .nw-audit-header > div:last-child {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-audit-summary {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.page-tickets .nw-audit-summary article {
    background: rgba(8, 13, 23, 0.76);
    border: 1px solid rgba(51, 65, 85, 0.74);
    border-radius: 12px;
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 10px;
}

body.page-tickets .nw-audit-summary span {
    color: #8da0b7;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-audit-summary strong {
    color: #e5edf7;
    font-size: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-audit-summary__sensitive {
    border-color: rgba(245, 158, 11, 0.34) !important;
}

body.page-tickets .nw-audit-filters {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(120px, 150px)) auto;
}

body.page-tickets .nw-audit-filters label {
    display: grid;
    gap: 5px;
    min-width: 0;
}

body.page-tickets .nw-audit-filters label span {
    color: #8da0b7;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-audit-search {
    position: relative;
}

body.page-tickets .nw-audit-search > i,
body.page-tickets .nw-audit-search > svg {
    color: #6ee7b7;
    height: 14px;
    left: 11px;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
}

body.page-tickets .nw-audit-search input,
body.page-tickets .nw-audit-filters select {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.9);
    border-radius: 10px;
    color: #e2e8f0;
    font: inherit;
    height: 36px;
    outline: 0;
    width: 100%;
}

body.page-tickets .nw-audit-search input {
    padding: 0 12px 0 32px;
}

body.page-tickets .nw-audit-filters select {
    padding: 0 10px;
}

body.page-tickets .nw-audit-search input:focus,
body.page-tickets .nw-audit-filters select:focus {
    border-color: rgba(34, 197, 94, 0.55);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

body.page-tickets .nw-audit-table {
    display: grid;
    gap: 8px;
    min-height: 0;
    overflow-y: auto;
    padding-right: 2px;
}

body.page-tickets .nw-audit-row {
    background: rgba(7, 12, 21, 0.9);
    border: 1px solid rgba(51, 65, 85, 0.75);
    border-radius: 12px;
    overflow: hidden;
}

body.page-tickets .nw-audit-row[hidden] {
    display: none !important;
}

body.page-tickets .nw-audit-row--sensitive {
    border-color: rgba(245, 158, 11, 0.42);
    box-shadow: inset 3px 0 0 rgba(245, 158, 11, 0.78);
}

body.page-tickets .nw-audit-row > button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #cbd5e1;
    cursor: pointer;
    display: grid;
    gap: 9px;
    grid-template-columns: 92px 112px 118px minmax(130px, 1fr) minmax(190px, 1.15fr) 142px;
    min-width: 0;
    padding: 10px 12px;
    text-align: left;
    width: 100%;
}

body.page-tickets .nw-audit-row > button:hover {
    background: rgba(15, 23, 42, 0.72);
}

body.page-tickets .nw-audit-row time,
body.page-tickets .nw-audit-row small {
    color: #8da0b7;
    font-size: 11px;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-audit-row strong,
body.page-tickets .nw-audit-row button > span:not(.nw-audit-diff) {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-audit-row strong {
    color: #f8fafc;
}

body.page-tickets .nw-audit-badge {
    background: rgba(15, 23, 42, 0.96);
    border: 1px solid rgba(71, 85, 105, 0.82);
    border-radius: 999px;
    color: #b6c4d6;
    display: inline-flex;
    font-size: 10px;
    font-weight: 900;
    justify-content: center;
    letter-spacing: 0.04em;
    padding: 4px 7px;
    text-transform: uppercase;
    width: fit-content;
}

body.page-tickets .nw-audit-badge--warning,
body.page-tickets .nw-audit-badge--sensitive {
    background: rgba(120, 53, 15, 0.22);
    border-color: rgba(245, 158, 11, 0.45);
    color: #fbbf24;
}

body.page-tickets .nw-audit-diff {
    align-items: center;
    display: flex;
    gap: 6px;
    min-width: 0;
}

body.page-tickets .nw-audit-diff em,
body.page-tickets .nw-audit-diff b {
    background: rgba(15, 23, 42, 0.86);
    border: 1px solid rgba(51, 65, 85, 0.7);
    border-radius: 8px;
    color: #cbd5e1;
    font-style: normal;
    min-width: 0;
    overflow: hidden;
    padding: 4px 7px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-audit-diff b {
    border-color: rgba(34, 197, 94, 0.32);
    color: #d1fae5;
}

body.page-tickets .nw-audit-diff i {
    color: #64748b;
    font-style: normal;
}

body.page-tickets .nw-audit-event-details {
    border-top: 1px solid rgba(30, 41, 59, 0.8);
    color: #9fb0c3;
    display: grid;
    gap: 8px;
    padding: 10px 12px 12px;
}

body.page-tickets .nw-audit-event-details[hidden] {
    display: none !important;
}

body.page-tickets .nw-audit-event-details p {
    margin: 0;
}

body.page-tickets .nw-audit-event-details pre {
    background: #020617;
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 10px;
    color: #a7f3d0;
    font-family: Consolas, "Liberation Mono", monospace;
    font-size: 11px;
    margin: 0;
    overflow: auto;
    padding: 10px;
}

body.page-tickets .nw-audit-empty {
    align-items: center;
    background: rgba(7, 12, 21, 0.86);
    border: 1px dashed rgba(71, 85, 105, 0.82);
    border-radius: 14px;
    color: #9fb0c3;
    display: grid;
    gap: 6px;
    justify-items: center;
    padding: 20px;
    text-align: center;
}

body.page-tickets .nw-audit-empty[hidden] {
    display: none !important;
}

body.page-tickets .nw-audit-empty strong {
    color: #e2e8f0;
}

@media (max-width: 920px) {
    body.page-tickets .nw-audit-panel {
        height: calc(100vh - 16px);
        margin: 8px;
        width: calc(100vw - 16px);
    }

    body.page-tickets .nw-audit-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-tickets .nw-audit-filters {
        grid-template-columns: 1fr 1fr;
    }

    body.page-tickets .nw-audit-row > button {
        grid-template-columns: 84px minmax(0, 1fr);
    }

    body.page-tickets .nw-audit-diff,
    body.page-tickets .nw-audit-row small {
        grid-column: 1 / -1;
    }
}

body.page-tickets .nw-new-ticket-shell {
    display: grid;
    gap: 14px;
}

body.page-tickets .nw-new-ticket-header {
    align-items: center;
    background: linear-gradient(135deg, rgba(9, 14, 24, 0.98), rgba(3, 8, 15, 0.98));
    border: 1px solid rgba(51, 65, 85, 0.85);
    border-radius: 18px;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 16px;
}

body.page-tickets .nw-new-ticket-title {
    align-items: center;
    display: flex;
    gap: 13px;
    min-width: 0;
}

body.page-tickets .nw-new-ticket-title h1 {
    color: #f8fafc;
    font-size: 24px;
    margin: 0;
}

body.page-tickets .nw-new-ticket-title p,
body.page-tickets .nw-new-ticket-title span {
    color: #9fb0c3;
}

body.page-tickets .nw-new-ticket-kicker {
    color: #86efac !important;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.page-tickets .nw-new-ticket-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

body.page-tickets .nw-new-progress {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.page-tickets .nw-new-progress button {
    align-items: center;
    background: rgba(8, 13, 23, 0.86);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 12px;
    color: #9fb0c3;
    cursor: pointer;
    display: flex;
    font-weight: 800;
    gap: 8px;
    min-width: 0;
    padding: 9px 10px;
}

body.page-tickets .nw-new-progress button span {
    align-items: center;
    background: rgba(15, 23, 42, 0.96);
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    height: 22px;
    justify-content: center;
    width: 22px;
}

body.page-tickets .nw-new-progress button.is-active {
    background: rgba(22, 101, 52, 0.16);
    border-color: rgba(34, 197, 94, 0.38);
    color: #f8fafc;
}

body.page-tickets .nw-new-progress button.is-active span {
    background: #22c55e;
    color: #02100a;
}

body.page-tickets .nw-new-ticket-layout {
    align-items: start;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) clamp(340px, 31vw, 440px);
}

body.page-tickets .nw-new-ticket-main {
    display: grid;
    gap: 14px;
    min-width: 0;
}

body.page-tickets .nw-new-section,
body.page-tickets .nw-new-ticket-sidebar .desk-panel {
    background: rgba(8, 13, 23, 0.92);
    border: 1px solid rgba(51, 65, 85, 0.8);
    border-radius: 16px;
    display: grid;
    gap: 14px;
    padding: 16px;
}

body.page-tickets .nw-new-section__header,
body.page-tickets .nw-new-summary header,
body.page-tickets .nw-new-quality header,
body.page-tickets .nw-new-requester-context header,
body.page-tickets .nw-new-endpoint-context header,
body.page-tickets .nw-new-duplicates header {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body.page-tickets .nw-new-section__header h2,
body.page-tickets .nw-new-ticket-sidebar h2 {
    align-items: center;
    color: #f8fafc;
    display: flex;
    font-size: 16px;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-new-section__header p,
body.page-tickets .nw-new-ticket-sidebar p {
    color: #9fb0c3;
    margin: 4px 0 0;
}

body.page-tickets .nw-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-form-grid label,
body.page-tickets .nw-rmm-alert-fields label {
    display: grid;
    gap: 7px;
    min-width: 0;
}

body.page-tickets .nw-form-grid label > span,
body.page-tickets .nw-rmm-alert-fields label > span,
body.page-tickets .nw-search-field > span {
    color: #91a4ba;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-tickets .nw-form-grid input,
body.page-tickets .nw-form-grid select,
body.page-tickets .nw-form-grid textarea,
body.page-tickets .nw-search-field input,
body.page-tickets .nw-rmm-alert-fields input,
body.page-tickets .nw-rmm-alert-fields select,
body.page-tickets .nw-rmm-alert-fields textarea {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 10px;
    color: #e2e8f0;
    font: inherit;
    outline: 0;
    padding: 10px 11px;
    width: 100%;
}

body.page-tickets .nw-form-grid textarea,
body.page-tickets .nw-rmm-alert-fields textarea {
    min-height: 92px;
    resize: vertical;
}

body.page-tickets .nw-form-grid input:focus,
body.page-tickets .nw-form-grid select:focus,
body.page-tickets .nw-form-grid textarea:focus,
body.page-tickets .nw-search-field input:focus {
    border-color: rgba(34, 197, 94, 0.52);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

body.page-tickets .nw-search-field {
    display: grid;
    gap: 7px;
    position: relative;
}

body.page-tickets .nw-autocomplete {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.96);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42);
    display: grid;
    gap: 4px;
    left: 0;
    max-height: 260px;
    overflow-y: auto;
    padding: 6px;
    position: absolute;
    right: 0;
    top: calc(100% + 4px);
    z-index: 40;
}

body.page-tickets .nw-autocomplete[hidden] {
    display: none !important;
}

body.page-tickets .nw-autocomplete button {
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #cbd5e1;
    cursor: pointer;
    display: grid;
    gap: 2px;
    padding: 9px;
    text-align: left;
}

body.page-tickets .nw-autocomplete button:hover {
    background: rgba(34, 197, 94, 0.1);
}

body.page-tickets .nw-autocomplete button strong {
    color: #f8fafc;
}

body.page-tickets .nw-autocomplete button span,
body.page-tickets .nw-empty-small {
    color: #91a4ba;
    font-size: 12px;
}

body.page-tickets .nw-endpoint-mini {
    align-items: center;
    background: linear-gradient(135deg, rgba(14, 116, 144, 0.12), rgba(7, 12, 21, 0.95));
    border: 1px solid rgba(34, 211, 238, 0.22);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

body.page-tickets .nw-endpoint-mini > div {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 0;
}

body.page-tickets .nw-endpoint-mini strong {
    color: #f8fafc;
}

body.page-tickets .nw-endpoint-mini small,
body.page-tickets .nw-endpoint-mini p {
    color: #9fb0c3;
    margin: 0;
}

body.page-tickets .nw-status-dot {
    background: #22c55e;
    border-radius: 999px;
    box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.12);
    height: 10px;
    width: 10px;
}

body.page-tickets .nw-endpoint-mini footer,
body.page-tickets .nw-review-card div,
body.page-tickets .nw-template-bar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-rmm-alert-fields {
    background: rgba(120, 53, 15, 0.14);
    border: 1px solid rgba(245, 158, 11, 0.28);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 12px;
}

body.page-tickets .nw-rmm-alert-fields[hidden] {
    display: none !important;
}

body.page-tickets .nw-suggestion-line {
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(34, 197, 94, 0.22);
    border-radius: 12px;
    color: #bbf7d0;
    font-weight: 800;
    padding: 10px 12px;
}

body.page-tickets .nw-template-bar button,
body.page-tickets .desk-category-suggestions button {
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 12px;
    color: #cbd5e1;
    cursor: pointer;
    padding: 9px 10px;
}

body.page-tickets .nw-template-bar button:hover,
body.page-tickets .desk-category-suggestions button:hover {
    border-color: rgba(34, 197, 94, 0.38);
    color: #f8fafc;
}

body.page-tickets .nw-new-dropzone {
    align-items: center;
    background: rgba(3, 7, 14, 0.72);
    border: 1px dashed rgba(71, 85, 105, 0.86);
    border-radius: 14px;
    color: #9fb0c3;
    display: grid;
    gap: 6px;
    justify-items: center;
    padding: 18px;
    text-align: center;
}

body.page-tickets .nw-new-dropzone.is-dragging {
    background: rgba(22, 101, 52, 0.14);
    border-color: rgba(34, 197, 94, 0.6);
}

body.page-tickets .nw-new-dropzone strong {
    color: #e2e8f0;
}

body.page-tickets .nw-new-attachments {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-new-attachments[hidden] {
    display: none !important;
}

body.page-tickets .nw-new-attachments span {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 999px;
    color: #dbeafe;
    display: inline-flex;
    gap: 7px;
    padding: 6px 9px;
}

body.page-tickets .nw-new-attachments button {
    background: transparent;
    border: 0;
    color: #94a3b8;
    cursor: pointer;
}

body.page-tickets .nw-review-card {
    background: rgba(15, 23, 42, 0.7);
    border: 1px solid rgba(51, 65, 85, 0.74);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

body.page-tickets .nw-review-card strong {
    color: #f8fafc;
    font-size: 18px;
}

body.page-tickets .nw-review-card p {
    color: #9fb0c3;
    margin: 0;
}

body.page-tickets .nw-new-ticket-sidebar {
    display: grid;
    gap: 12px;
    position: sticky;
    top: 82px;
}

body.page-tickets .nw-new-summary dl {
    display: grid;
    gap: 8px;
    margin: 0;
}

body.page-tickets .nw-new-summary dl div {
    align-items: center;
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(51, 65, 85, 0.64);
    border-radius: 10px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    min-width: 0;
    padding: 8px 9px;
}

body.page-tickets .nw-new-summary dt {
    color: #8da0b7;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-new-summary dd {
    color: #e2e8f0;
    margin: 0;
    max-width: 58%;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-new-summary header span,
body.page-tickets .nw-new-requester-context header span,
body.page-tickets .nw-new-endpoint-context header span,
body.page-tickets .nw-new-duplicates header span {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 999px;
    color: #86efac;
    font-size: 10px;
    font-weight: 900;
    padding: 4px 8px;
    text-transform: uppercase;
}

body.page-tickets .nw-quality-bar {
    background: rgba(15, 23, 42, 0.9);
    border-radius: 999px;
    display: block;
    height: 7px;
    overflow: hidden;
}

body.page-tickets .nw-quality-bar i {
    background: linear-gradient(90deg, #16a34a, #22c55e);
    display: block;
    height: 100%;
    width: 0;
}

body.page-tickets .nw-new-quality ul,
body.page-tickets .nw-new-requester-context ul {
    display: grid;
    gap: 7px;
    list-style: none;
    margin: 0;
    padding: 0;
}

body.page-tickets .nw-new-quality li,
body.page-tickets .nw-new-requester-context li {
    color: #9fb0c3;
    font-size: 12px;
}

body.page-tickets .nw-new-quality li::before {
    color: #475569;
    content: "○ ";
}

body.page-tickets .nw-new-quality li.is-done {
    color: #bbf7d0;
}

body.page-tickets .nw-new-quality li.is-done::before {
    color: #22c55e;
    content: "● ";
}

body.page-tickets .desk-duplicate-list,
body.page-tickets .nw-new-duplicates [data-duplicates-list] {
    display: grid;
    gap: 8px;
}

body.page-tickets .desk-duplicate-list article {
    background: rgba(15, 23, 42, 0.68);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 12px;
    display: grid;
    gap: 5px;
    padding: 9px;
}

body.page-tickets .desk-duplicate-list article strong {
    color: #e2e8f0;
}

body.page-tickets .desk-duplicate-list article span {
    color: #9fb0c3;
    font-size: 12px;
}

body.page-tickets .desk-duplicate-list footer {
    display: flex;
    gap: 6px;
}

body.page-tickets .desk-duplicate-list button {
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(71, 85, 105, 0.8);
    border-radius: 8px;
    color: #cbd5e1;
    cursor: pointer;
    font-weight: 800;
    padding: 5px 8px;
}

body.page-tickets .nw-duplicate-alert {
    background: rgba(120, 53, 15, 0.16);
    border: 1px solid rgba(245, 158, 11, 0.34);
    border-radius: 10px;
    color: #fbbf24;
    padding: 8px 9px;
}

body.page-tickets .nw-new-error {
    background: rgba(127, 29, 29, 0.18);
    border: 1px solid rgba(248, 113, 113, 0.35);
    border-radius: 14px;
    color: #fecaca;
    padding: 12px;
}

body.page-tickets .nw-new-error[hidden] {
    display: none !important;
}

body.page-tickets .nw-new-toast {
    align-items: center;
    background: #06101c;
    border: 1px solid rgba(34, 197, 94, 0.32);
    border-radius: 14px;
    bottom: 22px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.38);
    color: var(--nw-text-primary);
    display: flex;
    gap: 12px;
    padding: 12px 14px;
    position: fixed;
    right: 22px;
    z-index: 990;
}

body.page-tickets .nw-new-toast[hidden] {
    display: none !important;
}

body.page-tickets .nw-settings-shell {
    gap: 14px;
}

body.page-tickets .nw-settings-header {
    align-items: center;
    background: linear-gradient(135deg, rgba(8, 13, 23, 0.98), rgba(4, 9, 16, 0.98));
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 18px;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 16px;
}

body.page-tickets .nw-settings-header h1 {
    color: var(--nw-text-primary);
    margin: 0;
}

body.page-tickets .nw-settings-header p {
    color: var(--nw-text-secondary);
    margin: 4px 0 0;
}

body.page-tickets .nw-settings-header__actions,
body.page-tickets .nw-settings-panel__header,
body.page-tickets .nw-settings-toolbar,
body.page-tickets .nw-settings-tabs,
body.page-tickets .nw-settings-filters,
body.page-tickets .nw-settings-card footer,
body.page-tickets .nw-settings-drawer-panel footer,
body.page-tickets .nw-settings-confirm footer {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-settings-tabs {
    background: rgba(8, 13, 23, 0.86);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 16px;
    padding: 8px;
}

body.page-tickets .nw-settings-tabs button,
body.page-tickets .nw-settings-filters button,
body.page-tickets .nw-settings-card footer button,
body.page-tickets .nw-settings-quick-actions button {
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 10px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    font-weight: 850;
    padding: 8px 10px;
}

body.page-tickets .nw-settings-tabs button {
    display: inline-flex;
    gap: 8px;
}

body.page-tickets .nw-settings-tabs button span {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 999px;
    color: #86efac;
    font-size: 10px;
    padding: 2px 6px;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-tabs button.is-active,
body.page-tickets .nw-settings-tabs button:hover,
body.page-tickets .nw-settings-filters button.is-active,
body.page-tickets .nw-settings-filters button:hover,
body.page-tickets .nw-settings-card footer button:hover,
body.page-tickets .nw-settings-quick-actions button:hover {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.38);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-settings-layout {
    align-items: start;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) clamp(300px, 24vw, 370px);
}

body.page-tickets .nw-settings-layout.is-categories {
    grid-template-columns: minmax(0, 1fr);
}

body.page-tickets .nw-settings-layout.is-categories .nw-settings-sidebar {
    display: none;
}

body.page-tickets .nw-settings-main,
body.page-tickets .nw-settings-sidebar,
body.page-tickets .nw-settings-panel,
body.page-tickets .nw-settings-grid,
body.page-tickets .nw-settings-list {
    display: grid;
    gap: 12px;
    min-width: 0;
}

body.page-tickets .nw-settings-sidebar {
    position: sticky;
    top: 80px;
}

body.page-tickets .nw-settings-panel[hidden],
body.page-tickets .nw-settings-empty[hidden],
body.page-tickets .nw-settings-drawer[hidden],
body.page-tickets .nw-settings-confirm[hidden],
body.page-tickets .nw-new-toast[hidden] {
    display: none !important;
}

body.page-tickets .nw-settings-panel__header,
body.page-tickets .nw-settings-toolbar,
body.page-tickets .nw-settings-side-card,
body.page-tickets .nw-settings-coming-soon {
    background: rgba(8, 13, 23, 0.9);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 16px;
    padding: 14px;
}

body.page-tickets .nw-settings-panel__header {
    justify-content: space-between;
}

body.page-tickets .nw-category-admin-header {
    align-items: center;
    padding: 12px 14px;
}

body.page-tickets .nw-category-admin-header h2 {
    font-size: 18px;
}

body.page-tickets .nw-category-metrics {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
}

body.page-tickets .nw-category-metrics span,
body.page-tickets .nw-mini-badge {
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 999px;
    color: var(--nw-text-secondary);
    display: inline-flex;
    font-size: 11px;
    font-weight: 850;
    line-height: 1;
    padding: 5px 8px;
    white-space: nowrap;
}

body.page-tickets .nw-mini-badge.is-ok {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
    color: #86efac;
}

body.page-tickets .nw-mini-badge.is-warning {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.28);
    color: #fbbf24;
}

body.page-tickets .nw-mini-badge.is-danger {
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.28);
    color: #fca5a5;
}

body.page-tickets .nw-mini-badge.is-purple {
    background: rgba(168, 85, 247, 0.12);
    border-color: rgba(168, 85, 247, 0.28);
    color: #d8b4fe;
}

body.page-tickets .nw-mini-badge.is-muted {
    background: rgba(71, 85, 105, 0.16);
    border-color: rgba(100, 116, 139, 0.24);
    color: var(--nw-text-muted);
}

body.page-tickets .nw-category-alert-strip {
    align-items: center;
    background: rgba(14, 165, 233, 0.08);
    border: 1px solid rgba(14, 165, 233, 0.22);
    border-radius: 12px;
    color: #bae6fd;
    display: flex;
    gap: 8px;
    padding: 9px 11px;
}

body.page-tickets .nw-category-alert-strip svg {
    color: #67e8f9;
    flex: 0 0 auto;
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-config-kicker {
    color: #86efac;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-panel h2,
body.page-tickets .nw-settings-side-card h2,
body.page-tickets .nw-settings-coming-soon strong {
    color: var(--nw-text-primary);
    margin: 2px 0 0;
}

body.page-tickets .nw-settings-panel p,
body.page-tickets .nw-settings-side-card span,
body.page-tickets .nw-settings-coming-soon span {
    color: var(--nw-text-secondary);
}

body.page-tickets .nw-settings-toolbar {
    justify-content: space-between;
}

body.page-tickets [data-settings-panel="categories"] .nw-settings-toolbar {
    padding: 10px;
}

body.page-tickets .nw-settings-toolbar label {
    align-items: center;
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.84);
    border-radius: 12px;
    color: var(--nw-text-placeholder);
    display: flex;
    gap: 8px;
    min-width: min(360px, 100%);
    padding: 0 10px;
}

body.page-tickets .nw-settings-toolbar input {
    background: transparent;
    border: 0;
    color: var(--nw-text-primary);
    min-height: 40px;
    outline: 0;
    width: 100%;
}

body.page-tickets .nw-settings-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-category-table-wrap {
    background: rgba(8, 13, 23, 0.9);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 16px;
    max-height: min(62vh, 680px);
    overflow: auto;
}

body.page-tickets .nw-category-table {
    border-collapse: collapse;
    min-width: 1120px;
    width: 100%;
}

body.page-tickets .nw-category-table th {
    background: rgba(15, 23, 42, 0.82);
    border-bottom: 1px solid rgba(51, 65, 85, 0.72);
    color: var(--nw-table-heading);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    padding: 10px 10px;
    position: sticky;
    top: 0;
    text-align: left;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 2;
}

body.page-tickets .nw-category-table th[data-sort]::after {
    color: #475569;
    content: "v";
    font-size: 11px;
    margin-left: 6px;
}

body.page-tickets .nw-category-table td {
    border-bottom: 1px solid rgba(30, 41, 59, 0.72);
    color: var(--nw-text-primary);
    font-size: 12px;
    padding: 9px 10px;
    vertical-align: middle;
}

body.page-tickets .nw-category-table tbody tr {
    transition: background 140ms ease;
}

body.page-tickets .nw-category-table tbody tr:hover {
    background: rgba(34, 197, 94, 0.055);
}

body.page-tickets .nw-category-table tbody tr[data-status="inactive"] {
    opacity: 0.72;
}

body.page-tickets .nw-category-table tbody tr[data-filter-tags*="without-sla"] td:nth-child(4) .nw-mini-badge {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.28);
    color: #fbbf24;
}

body.page-tickets .nw-category-table tbody tr[hidden] {
    display: none !important;
}

body.page-tickets .nw-category-name {
    align-items: center;
    color: var(--nw-text-primary);
    display: inline-flex;
    gap: 8px;
    min-width: 180px;
}

body.page-tickets .nw-category-name svg {
    color: #86efac;
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-category-name i.bi {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.22);
    border-radius: 7px;
    color: #86efac;
    display: inline-grid;
    flex: 0 0 auto;
    font-size: 15px;
    height: 26px;
    line-height: 1;
    place-items: center;
    width: 26px;
}

body.page-tickets .nw-category-name--with-description {
    align-items: flex-start;
}

body.page-tickets .nw-category-name--with-description span {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.page-tickets .nw-category-name--with-description small {
    color: var(--nw-text-subtle);
    display: block;
    font-size: 11px;
    font-weight: 600;
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-category-name[data-category-color="green"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="green"] i { color: #86efac; }
body.page-tickets .nw-category-name[data-category-color="green"] i.bi { background: rgba(34, 197, 94, 0.1); border-color: rgba(34, 197, 94, 0.25); }
body.page-tickets [data-category-color-option="green"] span { background: #22c55e; }

body.page-tickets .nw-category-name[data-category-color="blue"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="blue"] i { color: #93c5fd; }
body.page-tickets .nw-category-name[data-category-color="blue"] i.bi { background: rgba(59, 130, 246, 0.1); border-color: rgba(59, 130, 246, 0.25); }
body.page-tickets [data-category-color-option="blue"] span { background: #3b82f6; }

body.page-tickets .nw-category-name[data-category-color="purple"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="purple"] i { color: #d8b4fe; }
body.page-tickets .nw-category-name[data-category-color="purple"] i.bi { background: rgba(168, 85, 247, 0.1); border-color: rgba(168, 85, 247, 0.25); }
body.page-tickets [data-category-color-option="purple"] span { background: #a855f7; }

body.page-tickets .nw-category-name[data-category-color="amber"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="amber"] i { color: #fbbf24; }
body.page-tickets .nw-category-name[data-category-color="amber"] i.bi { background: rgba(245, 158, 11, 0.11); border-color: rgba(245, 158, 11, 0.26); }
body.page-tickets [data-category-color-option="amber"] span { background: #f59e0b; }

body.page-tickets .nw-category-name[data-category-color="red"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="red"] i { color: #fca5a5; }
body.page-tickets .nw-category-name[data-category-color="red"] i.bi { background: rgba(239, 68, 68, 0.11); border-color: rgba(239, 68, 68, 0.26); }
body.page-tickets [data-category-color-option="red"] span { background: #ef4444; }

body.page-tickets .nw-category-name[data-category-color="cyan"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="cyan"] i { color: #67e8f9; }
body.page-tickets .nw-category-name[data-category-color="cyan"] i.bi { background: rgba(6, 182, 212, 0.1); border-color: rgba(6, 182, 212, 0.25); }
body.page-tickets [data-category-color-option="cyan"] span { background: #06b6d4; }

body.page-tickets .nw-category-name[data-category-color="gray"] i.bi,
body.page-tickets .nw-category-config-preview[data-category-color="gray"] i { color: #cbd5e1; }
body.page-tickets .nw-category-name[data-category-color="gray"] i.bi { background: rgba(100, 116, 139, 0.13); border-color: rgba(100, 116, 139, 0.28); }
body.page-tickets [data-category-color-option="gray"] span { background: #64748b; }

body.page-tickets .nw-category-config-preview,
body.page-tickets .nw-category-icon-picker,
body.page-tickets .nw-category-color-picker {
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 10px;
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 10px;
}

body.page-tickets .nw-category-config-preview > span,
body.page-tickets .nw-category-icon-picker legend,
body.page-tickets .nw-category-color-picker legend {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    padding: 0;
    text-transform: uppercase;
}

body.page-tickets .nw-category-config-preview div {
    align-items: center;
    display: flex;
    gap: 9px;
    min-width: 0;
}

body.page-tickets .nw-category-config-preview i {
    display: inline-grid;
    font-size: 18px;
    line-height: 1;
    place-items: center;
}

body.page-tickets .nw-category-config-preview strong {
    color: var(--nw-text-primary);
    min-width: 0;
}

body.page-tickets .nw-category-config-preview em {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.24);
    border-radius: 999px;
    color: #86efac;
    font-size: 10px;
    font-style: normal;
    font-weight: 800;
    margin-left: auto;
    padding: 3px 7px;
    text-transform: uppercase;
}

body.page-tickets .nw-category-config-preview small {
    color: #fbbf24;
    font-size: 11px;
}

body.page-tickets .nw-category-icon-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
}

body.page-tickets .nw-category-color-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-category-icon-grid button,
body.page-tickets .nw-category-color-grid button {
    align-items: center;
    background: rgba(8, 13, 23, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.74);
    border-radius: 8px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 7px;
    justify-content: center;
    transition: border-color 140ms ease, color 140ms ease, background 140ms ease;
}

body.page-tickets .nw-category-icon-grid button {
    flex-direction: column;
    min-height: 68px;
    padding: 9px 7px;
    position: relative;
    text-align: center;
}

body.page-tickets .nw-category-icon-grid button i {
    display: inline-grid;
    flex: 0 0 auto;
    font-size: 18px;
    line-height: 1;
    place-items: center;
    width: 20px;
}

body.page-tickets .nw-category-icon-grid button span {
    display: block;
    font-size: 10px;
    letter-spacing: 0.045em;
    line-height: 1.1;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

body.page-tickets .nw-category-icon-grid button:hover,
body.page-tickets .nw-category-color-grid button:hover,
body.page-tickets .nw-category-icon-grid button.is-selected,
body.page-tickets .nw-category-color-grid button.is-selected {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.36);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-category-icon-grid button:focus-visible,
body.page-tickets .nw-category-color-grid button:focus-visible {
    border-color: rgba(134, 239, 172, 0.78);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.14);
    outline: none;
}

body.page-tickets .nw-category-icon-grid button.is-selected {
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(134, 239, 172, 0.62);
}

body.page-tickets .nw-category-icon-grid button.is-selected i {
    color: #bbf7d0;
}

body.page-tickets .nw-category-icon-grid button.is-selected::after {
    align-items: center;
    background: rgba(34, 197, 94, 0.22);
    border: 1px solid rgba(134, 239, 172, 0.46);
    border-radius: 999px;
    color: #bbf7d0;
    content: "✓";
    display: inline-flex;
    font-size: 10px;
    font-weight: 900;
    height: 16px;
    justify-content: center;
    position: absolute;
    right: 6px;
    top: 6px;
    width: 16px;
}

body.page-tickets .nw-category-color-grid button {
    min-height: 34px;
    padding: 7px 8px;
}

body.page-tickets .nw-category-color-grid button span {
    border-radius: 999px;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.05);
    display: inline-block;
    height: 10px;
    width: 10px;
}

body.page-tickets .nw-category-actions {
    position: relative;
    white-space: nowrap;
}

body.page-tickets .nw-category-actions button {
    align-items: center;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.7);
    border-radius: 8px;
    color: var(--nw-text-muted);
    cursor: pointer;
    display: inline-flex;
    height: 26px;
    justify-content: center;
    margin-right: 3px;
    width: 26px;
}

body.page-tickets .nw-category-actions button:hover {
    border-color: rgba(34, 197, 94, 0.35);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-category-actions svg {
    height: 14px;
    width: 14px;
}

body.page-tickets .nw-category-action-menu {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.9);
    border-radius: 10px;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.36);
    display: grid;
    gap: 4px;
    min-width: 160px;
    padding: 6px;
    position: absolute;
    right: 0;
    top: calc(100% + 5px);
    z-index: 10;
}

body.page-tickets .nw-category-action-menu[hidden] {
    display: none !important;
}

body.page-tickets .nw-category-action-menu button {
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: var(--nw-text-secondary);
    display: flex;
    gap: 8px;
    height: auto;
    justify-content: flex-start;
    margin: 0;
    padding: 8px;
    width: 100%;
}

body.page-tickets .nw-category-action-menu button:hover {
    background: rgba(34, 197, 94, 0.1);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-settings-template-fields {
    display: grid;
    gap: 12px;
}

body.page-tickets .nw-settings-template-fields[hidden],
body.page-tickets .nw-template-special[hidden],
body.page-tickets .nw-settings-gmud-fields[hidden] {
    display: none !important;
}

body.page-tickets .nw-settings-gmud-fields {
    display: grid;
    gap: 12px;
}

body.page-tickets .nw-gmud-required-fields,
body.page-tickets .nw-gmud-flow-preview {
    background: rgba(8, 13, 23, 0.74);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    padding: 11px;
}

body.page-tickets .nw-gmud-required-fields header,
body.page-tickets .nw-gmud-flow-preview header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-gmud-required-fields header div {
    display: grid;
    gap: 2px;
}

body.page-tickets .nw-gmud-required-fields header span,
body.page-tickets .nw-gmud-flow-preview header span {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-gmud-required-fields header strong {
    color: var(--nw-text-primary);
    font-size: 13px;
}

body.page-tickets .nw-gmud-required-fields header em,
body.page-tickets .nw-gmud-flow-preview header em {
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 999px;
    color: var(--nw-text-secondary);
    font-size: 10px;
    font-style: normal;
    font-weight: 850;
    padding: 5px 8px;
}

body.page-tickets .nw-gmud-flow-preview header em[data-risk="low"] {
    border-color: rgba(34, 197, 94, 0.28);
    color: #86efac;
}

body.page-tickets .nw-gmud-flow-preview header em[data-risk="medium"] {
    border-color: rgba(245, 158, 11, 0.28);
    color: #fbbf24;
}

body.page-tickets .nw-gmud-flow-preview header em[data-risk="high"] {
    border-color: rgba(239, 68, 68, 0.28);
    color: #fca5a5;
}

body.page-tickets .nw-gmud-required-fields ul {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    list-style: none;
    margin: 0;
    padding: 0;
}

body.page-tickets .nw-gmud-required-fields li {
    align-items: center;
    background: rgba(15, 23, 42, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.58);
    border-radius: 8px;
    color: var(--nw-text-secondary);
    display: flex;
    font-size: 11px;
    gap: 7px;
    min-width: 0;
    padding: 7px 8px;
}

body.page-tickets .nw-gmud-required-fields li svg {
    color: #4ade80;
    flex: 0 0 auto;
    height: 13px;
    width: 13px;
}

body.page-tickets .nw-gmud-flow-preview [data-gmud-flow-steps] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

body.page-tickets .nw-gmud-flow-preview [data-gmud-flow-steps] span {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.66);
    border-radius: 7px;
    color: var(--nw-text-primary);
    font-size: 10px;
    font-weight: 750;
    padding: 6px 7px;
}

body.page-tickets .nw-gmud-flow-preview [data-gmud-flow-steps] svg {
    color: var(--nw-text-subtle);
    height: 12px;
    width: 12px;
}

body.page-tickets .nw-gmud-flow-preview p {
    color: var(--nw-text-muted);
    font-size: 11px;
    margin: 0;
}

body.page-tickets .nw-gmud-table {
    min-width: 1280px;
}

body.page-tickets .nw-template-visibility-note {
    background: rgba(14, 165, 233, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.24);
    border-radius: 10px;
    color: var(--nw-text-secondary);
    font-size: 12px;
    line-height: 1.45;
    padding: 9px 11px;
}

body.page-tickets .nw-template-visibility-note[hidden] {
    display: none !important;
}

body.page-tickets .nw-template-visibility-note[data-tone="internal_comment"] {
    background: rgba(100, 116, 139, 0.1);
    border-color: rgba(148, 163, 184, 0.22);
}

body.page-tickets .nw-template-visibility-note[data-tone="automatic_reply"] {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.24);
}

body.page-tickets .nw-template-editor {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-template-editor textarea {
    font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace);
    line-height: 1.55;
    min-height: 180px;
    resize: vertical;
}

body.page-tickets .nw-template-variable-bank {
    background: rgba(15, 23, 42, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 10px;
}

body.page-tickets .nw-template-variable-bank span {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    width: 100%;
}

body.page-tickets .nw-template-variable-bank button {
    background: rgba(8, 13, 23, 0.86);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 999px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace);
    font-size: 11px;
    padding: 6px 8px;
}

body.page-tickets .nw-template-variable-bank button:hover {
    border-color: rgba(34, 197, 94, 0.38);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-template-preview-box {
    background: rgba(8, 13, 23, 0.74);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 12px;
    display: grid;
    gap: 8px;
    padding: 11px;
}

body.page-tickets .nw-template-preview-box span {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-template-preview-box p {
    color: var(--nw-text-primary);
    line-height: 1.55;
    margin: 0;
}

body.page-tickets .nw-settings-card {
    background: rgba(8, 13, 23, 0.92);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 16px;
    display: grid;
    gap: 12px;
    padding: 14px;
    transition: border-color 150ms ease, transform 150ms ease;
}

body.page-tickets .nw-settings-card:hover {
    border-color: rgba(34, 197, 94, 0.34);
    transform: translateY(-1px);
}

body.page-tickets .nw-settings-card[hidden] {
    display: none !important;
}

body.page-tickets .nw-settings-card header {
    align-items: flex-start;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

body.page-tickets .nw-settings-card h3 {
    color: var(--nw-text-primary);
    margin: 0;
}

body.page-tickets .nw-settings-card p {
    color: var(--nw-text-secondary);
    font-size: 12px;
    line-height: 1.4;
    margin: 4px 0 0;
}

body.page-tickets .nw-config-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.26);
    border-radius: 12px;
    color: #86efac;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

body.page-tickets .nw-config-icon.is-warning { background: rgba(245, 158, 11, 0.12); border-color: rgba(245, 158, 11, 0.28); color: #fbbf24; }
body.page-tickets .nw-config-icon.is-info { background: rgba(14, 165, 233, 0.12); border-color: rgba(14, 165, 233, 0.28); color: #67e8f9; }
body.page-tickets .nw-config-icon.is-purple { background: rgba(168, 85, 247, 0.12); border-color: rgba(168, 85, 247, 0.28); color: #d8b4fe; }
body.page-tickets .nw-config-icon.is-danger { background: rgba(239, 68, 68, 0.12); border-color: rgba(239, 68, 68, 0.28); color: #fca5a5; }

body.page-tickets .nw-config-badge {
    border-radius: 999px;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    padding: 4px 8px;
    text-transform: uppercase;
    white-space: nowrap;
}

body.page-tickets .nw-config-badge.is-active { background: rgba(34, 197, 94, 0.12); border: 1px solid rgba(34, 197, 94, 0.28); color: #86efac; }
body.page-tickets .nw-config-badge.is-muted { background: rgba(71, 85, 105, 0.18); border: 1px solid rgba(100, 116, 139, 0.26); color: #94a3b8; }
body.page-tickets .nw-config-badge.is-warning { background: rgba(245, 158, 11, 0.14); border: 1px solid rgba(245, 158, 11, 0.3); color: #fbbf24; }
body.page-tickets .nw-config-badge.is-danger { background: rgba(239, 68, 68, 0.14); border: 1px solid rgba(239, 68, 68, 0.3); color: #fca5a5; }

body.page-tickets .nw-settings-card dl,
body.page-tickets .nw-settings-side-card dl {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

body.page-tickets .nw-settings-card dl div,
body.page-tickets .nw-settings-side-card dl div {
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 10px;
    min-width: 0;
    padding: 8px;
}

body.page-tickets .nw-settings-card dt,
body.page-tickets .nw-settings-side-card dt {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-card dd,
body.page-tickets .nw-settings-side-card dd {
    color: var(--nw-text-primary);
    margin: 3px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-settings-card footer {
    border-top: 1px solid rgba(30, 41, 59, 0.72);
    padding-top: 10px;
}

body.page-tickets .nw-settings-list .nw-settings-card dl {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.page-tickets .nw-settings-side-card {
    display: grid;
    gap: 10px;
}

body.page-tickets .nw-settings-side-card h2 {
    align-items: center;
    display: flex;
    font-size: 15px;
    gap: 8px;
}

body.page-tickets .nw-config-alert {
    background: rgba(245, 158, 11, 0.1);
    border: 1px solid rgba(245, 158, 11, 0.24);
    border-radius: 12px;
    display: grid;
    gap: 3px;
    padding: 9px;
}

body.page-tickets .nw-config-alert.is-ok {
    background: rgba(34, 197, 94, 0.09);
    border-color: rgba(34, 197, 94, 0.22);
}

body.page-tickets .nw-config-alert strong,
body.page-tickets .nw-settings-history strong {
    color: var(--nw-text-primary);
}

body.page-tickets .nw-settings-history {
    display: grid;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

body.page-tickets .nw-settings-history li {
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 10px;
    display: grid;
    gap: 2px;
    padding: 8px;
}

body.page-tickets .nw-settings-quick-actions {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-settings-empty,
body.page-tickets .nw-settings-coming-soon {
    align-items: center;
    border-style: dashed;
    display: grid;
    justify-items: center;
    min-height: 220px;
    text-align: center;
}

body.page-tickets .nw-settings-coming-soon i,
body.page-tickets .nw-settings-coming-soon svg {
    color: #86efac;
    height: 32px;
    width: 32px;
}

body.page-tickets .nw-settings-coming-soon em {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 999px;
    color: #86efac;
    font-style: normal;
    font-weight: 900;
    padding: 5px 9px;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-drawer,
body.page-tickets .nw-settings-confirm {
    inset: 0;
    position: fixed;
    z-index: 980;
}

body.page-tickets .nw-settings-drawer-backdrop,
body.page-tickets .nw-settings-confirm::before {
    background: rgba(2, 6, 23, 0.66);
    content: "";
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-settings-drawer-panel {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(5, 10, 18, 0.99));
    border-left: 1px solid rgba(51, 65, 85, 0.88);
    box-shadow: -26px 0 80px rgba(0, 0, 0, 0.52);
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
    margin-left: auto;
    max-width: min(92vw, 620px);
    min-height: 0;
    overflow: hidden;
    position: relative;
    width: 620px;
}

body.page-tickets .nw-settings-drawer-panel > header,
body.page-tickets .nw-settings-drawer-panel > footer {
    align-items: center;
    border-bottom: 1px solid rgba(30, 41, 59, 0.88);
    display: flex;
    flex: 0 0 auto;
    justify-content: space-between;
    padding: 16px;
}

body.page-tickets .nw-settings-drawer-panel > footer {
    background: rgba(5, 10, 18, 0.96);
    border-bottom: 0;
    border-top: 1px solid rgba(30, 41, 59, 0.88);
}

body.page-tickets .nw-settings-drawer-panel h2 {
    color: var(--nw-text-primary);
    margin: 2px 0;
}

body.page-tickets .nw-settings-drawer-panel header span {
    color: #86efac;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-drawer-panel header p {
    color: var(--nw-text-secondary);
    margin: 0;
}

body.page-tickets .nw-settings-drawer-form {
    display: grid;
    flex: 1 1 auto;
    gap: 12px;
    min-height: 0;
    overflow-y: auto;
    padding: 14px 16px 22px;
}

body.page-tickets .nw-settings-drawer-form label,
body.page-tickets .nw-settings-drawer-grid label {
    display: grid;
    gap: 7px;
    min-width: 0;
}

body.page-tickets .nw-settings-drawer-form span {
    color: var(--nw-text-label);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-settings-drawer-form input,
body.page-tickets .nw-settings-drawer-form textarea,
body.page-tickets .nw-settings-drawer-form select {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 10px;
    color: var(--nw-text-primary);
    font: inherit;
    outline: 0;
    padding: 10px 11px;
    width: 100%;
}

body.page-tickets .nw-settings-drawer-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-settings-drawer-grid[hidden] {
    display: none !important;
}

body.page-tickets .nw-settings-drawer-grid .wide {
    grid-column: 1 / -1;
}

body.page-tickets .nw-settings-confirm {
    align-items: center;
    display: grid;
    justify-items: center;
}

body.page-tickets .nw-settings-confirm section {
    background: #0d1117;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 16px;
    display: grid;
    gap: 10px;
    max-width: min(92vw, 420px);
    padding: 18px;
    position: relative;
}

body.page-tickets .nw-settings-confirm h2 {
    color: var(--nw-text-primary);
    margin: 0;
}

body.page-tickets .nw-settings-confirm p {
    color: var(--nw-text-secondary);
    margin: 0;
}

@media (max-width: 1120px) {
    body.page-tickets .nw-settings-layout,
    body.page-tickets .nw-settings-grid {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-settings-sidebar {
        position: static;
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-settings-header,
    body.page-tickets .nw-settings-panel__header,
    body.page-tickets .nw-settings-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-tickets .nw-settings-card header,
    body.page-tickets .nw-settings-card dl,
    body.page-tickets .nw-settings-list .nw-settings-card dl,
    body.page-tickets .nw-settings-drawer-grid {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-gmud-required-fields ul {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-settings-drawer-panel {
        width: min(100vw, 620px);
    }
}

body.page-tickets .nw-advanced-record-shell .nw-new-ticket-header {
    background: linear-gradient(135deg, rgba(8, 13, 23, 0.98), rgba(4, 9, 16, 0.98));
}

body.page-tickets .nw-record-type-panel {
    background: rgba(8, 13, 23, 0.9);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 16px;
    display: grid;
    gap: 12px;
    padding: 14px;
}

body.page-tickets .nw-record-type-panel > header {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-record-type-panel h2 {
    color: var(--nw-text-primary);
    font-size: 16px;
    margin: 0;
}

body.page-tickets .nw-record-type-panel p {
    color: var(--nw-text-secondary);
    margin: 4px 0 0;
}

body.page-tickets .nw-record-type-strip {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.page-tickets .nw-record-type-strip button {
    background: rgba(8, 13, 23, 0.9);
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 16px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    display: grid;
    gap: 7px;
    grid-template-columns: auto minmax(0, 1fr);
    justify-items: start;
    min-width: 0;
    padding: 12px;
    text-align: left;
}

body.page-tickets .nw-record-type-strip button:hover,
body.page-tickets .nw-record-type-strip button.is-active {
    background: rgba(22, 101, 52, 0.14);
    border-color: rgba(34, 197, 94, 0.42);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-record-type-strip i,
body.page-tickets .nw-record-type-strip svg {
    color: #86efac;
    grid-row: span 2;
    height: 18px;
    margin-top: 1px;
    width: 18px;
}

body.page-tickets .nw-record-type-strip strong {
    color: var(--nw-text-primary);
    font-size: 14px;
}

body.page-tickets .nw-record-type-strip span {
    color: var(--nw-text-label);
    font-size: 12px;
    line-height: 1.35;
    min-width: 0;
}

body.page-tickets .nw-advanced-record-shell .nw-new-ticket-layout {
    grid-template-columns: minmax(0, 1fr) clamp(300px, 26vw, 380px);
}

body.page-tickets .nw-advanced-record-shell .nw-new-ticket-main {
    gap: 12px;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section {
    gap: 12px;
    padding: 14px;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header {
    align-items: flex-start;
    display: grid;
    gap: 4px 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-content: stretch;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header .desk-btn {
    white-space: nowrap;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header > div {
    grid-column: 1;
    grid-row: 1 / span 2;
    min-width: 0;
    order: 1;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header > .desk-step-pill,
body.page-tickets .nw-advanced-record-shell .nw-new-section__header > em {
    grid-column: 2;
    justify-self: end;
    order: 2;
    white-space: nowrap;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header > .desk-btn {
    grid-column: 2;
    justify-self: end;
    order: 3;
}

body.page-tickets .nw-advanced-record-shell .nw-new-section__header h2 {
    font-size: 15px;
}

body.page-tickets .nw-compact-form-grid {
    gap: 10px;
}

body.page-tickets .nw-advanced-record-shell .nw-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-advanced-record-shell .nw-form-grid .wide,
body.page-tickets .nw-advanced-record-shell .nw-rmm-alert-fields .wide {
    grid-column: 1 / -1;
}

body.page-tickets .nw-advanced-record-shell .nw-form-grid textarea {
    min-height: 104px;
}

body.page-tickets .nw-requester-mini {
    align-items: center;
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 12px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding: 10px;
}

body.page-tickets .nw-requester-mini[hidden] {
    display: none !important;
}

body.page-tickets .nw-requester-mini strong {
    color: #f8fafc;
}

body.page-tickets .nw-requester-mini small,
body.page-tickets .nw-requester-mini li {
    color: #9fb0c3;
}

body.page-tickets .nw-requester-mini ul {
    display: none;
}

body.page-tickets .nw-requester-mini > span {
    background: rgba(245, 158, 11, 0.16);
    border: 1px solid rgba(245, 158, 11, 0.34);
    border-radius: 999px;
    color: #fbbf24;
    font-size: 10px;
    font-weight: 900;
    padding: 4px 8px;
}

body.page-tickets .nw-auto-context-card {
    background: linear-gradient(135deg, rgba(14, 116, 144, 0.12), rgba(7, 12, 21, 0.95));
    border: 1px solid rgba(34, 211, 238, 0.22);
    border-radius: 14px;
    display: grid;
    gap: 11px;
    padding: 12px;
}

body.page-tickets .nw-auto-context-card header {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

body.page-tickets .nw-auto-context-card header span {
    color: #67e8f9;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.page-tickets .nw-auto-context-card h3 {
    color: #f8fafc;
    font-size: 15px;
    line-height: 1.25;
    margin: 4px 0 0;
}

body.page-tickets .nw-auto-context-card header em,
body.page-tickets .nw-gmud-panel [data-approval-badge] {
    background: rgba(245, 158, 11, 0.15);
    border: 1px solid rgba(245, 158, 11, 0.34);
    border-radius: 999px;
    color: #fbbf24;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    padding: 4px 8px;
    text-transform: uppercase;
}

body.page-tickets .nw-auto-context-card dl {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
}

body.page-tickets .nw-auto-context-card dl div {
    background: rgba(15, 23, 42, 0.56);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 10px;
    padding: 8px;
}

body.page-tickets .nw-auto-context-card dt {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-auto-context-card dd {
    color: var(--nw-text-primary);
    font-size: 12px;
    margin: 3px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-auto-context-card footer {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-advanced-dropzone {
    align-items: center;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 10px;
    justify-items: start;
    padding: 10px 12px;
    text-align: left;
}

body.page-tickets .nw-advanced-dropzone > div {
    display: grid;
    gap: 3px;
    min-width: 0;
}

body.page-tickets .nw-advanced-dropzone span {
    font-size: 12px;
}

body.page-tickets .nw-advanced-dropzone .desk-btn {
    justify-self: end;
    white-space: nowrap;
}

body.page-tickets [data-standard-action][hidden],
body.page-tickets [data-gmud-action][hidden],
body.page-tickets [data-standard-actions][hidden],
body.page-tickets [data-gmud-actions][hidden] {
    display: none !important;
}

body.page-tickets .nw-priority-details {
    background: rgba(15, 23, 42, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.7);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 10px;
}

body.page-tickets .nw-advanced-record-shell .nw-rmm-alert-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-advanced-record-shell .nw-rmm-alert-fields > .nw-new-section__header,
body.page-tickets .nw-advanced-record-shell .nw-rmm-alert-fields > .nw-suggestion-line {
    grid-column: 1 / -1;
}

body.page-tickets .nw-review-summary {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

body.page-tickets .nw-review-summary div {
    background: rgba(8, 13, 23, 0.74);
    border: 1px solid rgba(51, 65, 85, 0.64);
    border-radius: 10px;
    min-width: 0;
    padding: 8px 9px;
}

body.page-tickets .nw-review-summary dt {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-review-summary dd {
    color: var(--nw-text-primary);
    margin: 3px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-advanced-sidebar .nw-new-summary {
    gap: 11px;
}

body.page-tickets .nw-advanced-sidebar .nw-new-summary dl {
    gap: 7px;
}

body.page-tickets .nw-advanced-sidebar .nw-new-summary dl div {
    padding: 7px 8px;
}

body.page-tickets .nw-priority-details[hidden] {
    display: none !important;
}

body.page-tickets .nw-priority-details label,
body.page-tickets .nw-compact-single {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-priority-details span,
body.page-tickets .nw-compact-single span {
    color: #91a4ba;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

body.page-tickets .nw-priority-details input,
body.page-tickets .nw-priority-details select,
body.page-tickets .nw-compact-single input {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 10px;
    color: #e2e8f0;
    font: inherit;
    padding: 10px 11px;
    width: 100%;
}

body.page-tickets .nw-type-panel[hidden] {
    display: none !important;
}

body.page-tickets .nw-type-panel {
    animation: fadeIn 150ms ease;
}

body.page-tickets .nw-gmud-panel {
    background: linear-gradient(135deg, rgba(88, 28, 135, 0.13), rgba(8, 13, 23, 0.92));
    border-color: rgba(168, 85, 247, 0.3);
}

body.page-tickets .nw-essential-meter {
    color: #9fb0c3;
    margin: 0;
}

body.page-tickets .nw-essential-meter strong {
    color: #bbf7d0;
}

body.page-tickets .nw-advanced-sidebar .nw-new-endpoint-context,
body.page-tickets .nw-advanced-sidebar .nw-new-duplicates {
    padding: 14px;
}

@media (max-width: 1040px) {
    body.page-tickets .nw-record-type-strip,
    body.page-tickets .nw-auto-context-card dl,
    body.page-tickets .nw-priority-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-record-type-strip,
    body.page-tickets .nw-auto-context-card dl,
    body.page-tickets .nw-priority-details {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-advanced-dropzone {
        grid-template-columns: 1fr;
    }
}

body.page-tickets .nw-ticket-drawer {
    inset: 0;
    position: fixed;
    z-index: 980;
}

body.page-tickets .nw-ticket-drawer[hidden] {
    display: none !important;
}

body.page-tickets .nw-ticket-drawer-backdrop {
    background: rgba(2, 6, 23, 0.68);
    inset: 0;
    position: absolute;
}

body.page-tickets .nw-ticket-drawer-panel {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(5, 10, 18, 0.99));
    border-left: 1px solid rgba(51, 65, 85, 0.9);
    box-shadow: -26px 0 80px rgba(0, 0, 0, 0.55);
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
    margin-left: auto;
    max-height: 100vh;
    max-height: 100dvh;
    min-height: 0;
    overflow: hidden;
    position: relative;
    width: clamp(560px, 42vw, 680px);
}

body.page-tickets .nw-ticket-drawer.is-open .nw-ticket-drawer-panel {
    animation: nwDrawerIn 180ms ease;
}

body.page-tickets .nw-ticket-drawer-header,
body.page-tickets .nw-ticket-drawer-footer {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: 12px;
    justify-content: space-between;
    padding: 16px;
}

body.page-tickets .nw-ticket-drawer-header {
    border-bottom: 1px solid rgba(30, 41, 59, 0.92);
}

body.page-tickets .nw-ticket-drawer-header span {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 999px;
    color: #86efac;
    display: inline-flex;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    padding: 4px 8px;
    text-transform: uppercase;
}

body.page-tickets .nw-ticket-drawer-header h2 {
    align-items: center;
    color: var(--nw-text-primary);
    display: flex;
    font-size: 20px;
    gap: 8px;
    margin: 7px 0 3px;
}

body.page-tickets .nw-ticket-drawer-header p {
    color: var(--nw-text-secondary);
    margin: 0;
}

body.page-tickets .nw-ticket-drawer-header .desk-icon-button[data-quick-ticket-close] {
    align-items: center;
    background: rgba(15, 23, 42, 0.84);
    border: 1px solid rgba(51, 65, 85, 0.9);
    border-radius: 10px;
    color: var(--nw-text-secondary);
    display: inline-flex;
    flex: 0 0 auto;
    height: 34px;
    justify-content: center;
    padding: 0;
    width: 34px;
}

body.page-tickets .nw-ticket-drawer-header .desk-icon-button[data-quick-ticket-close]:hover {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.38);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-ticket-drawer-header .desk-icon-button[data-quick-ticket-close] svg,
body.page-tickets .nw-ticket-drawer-header .desk-icon-button[data-quick-ticket-close] i {
    display: block;
    height: 16px;
    width: 16px;
}

body.page-tickets .nw-ticket-drawer-body {
    display: grid;
    flex: 1 1 auto;
    gap: 12px;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 14px 16px 24px;
    scrollbar-color: rgba(100, 116, 139, 0.58) transparent;
    scrollbar-width: thin;
}

body.page-tickets .nw-ticket-drawer-body::-webkit-scrollbar {
    width: 8px;
}

body.page-tickets .nw-ticket-drawer-body::-webkit-scrollbar-track {
    background: transparent;
}

body.page-tickets .nw-ticket-drawer-body::-webkit-scrollbar-thumb {
    background: rgba(100, 116, 139, 0.55);
    border-radius: 999px;
}

body.page-tickets .nw-ticket-drawer-footer {
    background: rgba(5, 10, 18, 0.96);
    border-top: 1px solid rgba(30, 41, 59, 0.92);
    flex-wrap: wrap;
    justify-content: flex-end;
}

body.page-tickets .nw-quick-ticket-error {
    background: rgba(127, 29, 29, 0.18);
    border-bottom: 1px solid rgba(248, 113, 113, 0.28);
    color: #fecaca;
    flex: 0 0 auto;
    padding: 10px 16px;
}

body.page-tickets .nw-quick-ticket-error[hidden] {
    display: none !important;
}

body.page-tickets .nw-quick-ticket-error ul {
    margin: 5px 0 0 18px;
    padding: 0;
}

body.page-tickets .nw-quick-ticket-form {
    color: var(--nw-text-primary);
}

body.page-tickets .nw-quick-ticket-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-tickets .nw-quick-ticket-field {
    display: grid;
    gap: 7px;
    min-width: 0;
    position: relative;
}

body.page-tickets .nw-quick-ticket-field--wide {
    grid-column: 1 / -1;
}

body.page-tickets .nw-quick-ticket-field > span {
    color: var(--nw-text-label);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page-tickets .nw-quick-ticket-field input,
body.page-tickets .nw-quick-ticket-field select,
body.page-tickets .nw-quick-ticket-field textarea {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 10px;
    color: var(--nw-text-primary);
    font: inherit;
    outline: 0;
    padding: 10px 11px;
    width: 100%;
}

body.page-tickets .nw-quick-ticket-field textarea {
    min-height: 112px;
    resize: vertical;
}

body.page-tickets .nw-quick-ticket-field input:focus,
body.page-tickets .nw-quick-ticket-field select:focus,
body.page-tickets .nw-quick-ticket-field textarea:focus {
    border-color: rgba(34, 197, 94, 0.52);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

body.page-tickets .nw-quick-autocomplete {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.96);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42);
    display: grid;
    gap: 4px;
    left: 0;
    max-height: 230px;
    overflow-y: auto;
    padding: 6px;
    position: absolute;
    right: 0;
    top: calc(100% + 4px);
    z-index: 50;
}

body.page-tickets .nw-quick-autocomplete[hidden] {
    display: none !important;
}

body.page-tickets .nw-quick-autocomplete button {
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    display: grid;
    gap: 2px;
    padding: 9px;
    text-align: left;
}

body.page-tickets .nw-quick-autocomplete button:hover {
    background: rgba(34, 197, 94, 0.1);
}

body.page-tickets .nw-quick-autocomplete strong {
    color: var(--nw-text-primary);
}

body.page-tickets .nw-quick-autocomplete span,
body.page-tickets .nw-quick-autocomplete p {
    color: var(--nw-text-label);
    font-size: 12px;
    margin: 0;
}

body.page-tickets .nw-quick-autocomplete p button {
    background: transparent;
    border: 0;
    color: #86efac;
    cursor: pointer;
    display: inline;
    font: inherit;
    font-weight: 900;
    padding: 0;
    text-align: inherit;
}

body.page-tickets .nw-quick-autocomplete p button:hover {
    color: var(--nw-text-primary);
}

body.page-tickets .nw-quick-ticket-summary,
body.page-tickets .nw-quick-ticket-endpoint,
body.page-tickets .nw-quick-ticket-related,
body.page-tickets .nw-quick-requester-create {
    background: rgba(8, 13, 23, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.75);
    border-radius: 14px;
    display: grid;
    gap: 9px;
    padding: 11px;
}

body.page-tickets .nw-quick-ticket-summary[hidden],
body.page-tickets .nw-quick-ticket-endpoint[hidden],
body.page-tickets .nw-quick-requester-create[hidden] {
    display: none !important;
}

body.page-tickets .nw-quick-ticket-summary {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-quick-ticket-summary strong,
body.page-tickets .nw-quick-ticket-endpoint strong,
body.page-tickets .nw-quick-ticket-related strong {
    color: var(--nw-text-primary);
}

body.page-tickets .nw-quick-ticket-summary small,
body.page-tickets .nw-quick-ticket-endpoint small,
body.page-tickets .nw-quick-ticket-endpoint p,
body.page-tickets .nw-quick-ticket-related span,
body.page-tickets .nw-quick-ticket-related p {
    color: var(--nw-text-secondary);
    margin: 0;
}

body.page-tickets .nw-quick-ticket-summary > span {
    background: rgba(245, 158, 11, 0.16);
    border: 1px solid rgba(245, 158, 11, 0.32);
    border-radius: 999px;
    color: #fbbf24;
    font-size: 10px;
    font-weight: 900;
    padding: 4px 8px;
}

body.page-tickets .nw-quick-requester-create header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-quick-requester-create header strong {
    color: var(--nw-text-primary);
    font-size: 13px;
}

body.page-tickets .nw-quick-requester-create header button {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    color: var(--nw-text-muted);
    cursor: pointer;
    display: inline-flex;
    height: 26px;
    justify-content: center;
    width: 26px;
}

body.page-tickets .nw-quick-requester-create-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

body.page-tickets .nw-quick-requester-create-grid label {
    display: grid;
    gap: 5px;
}

body.page-tickets .nw-quick-requester-create-grid label:first-child {
    grid-column: 1 / -1;
}

body.page-tickets .nw-quick-requester-create-grid span {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

body.page-tickets .nw-quick-requester-create-grid input {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.88);
    border-radius: 9px;
    color: var(--nw-text-primary);
    padding: 8px 9px;
}

body.page-tickets .nw-quick-requester-create footer {
    display: flex;
    justify-content: flex-end;
}

body.page-tickets .nw-quick-requester-create footer button {
    background: rgba(34, 197, 94, 0.14);
    border: 1px solid rgba(34, 197, 94, 0.34);
    border-radius: 9px;
    color: #bbf7d0;
    cursor: pointer;
    font-size: 12px;
    font-weight: 900;
    padding: 7px 10px;
}

body.page-tickets .nw-quick-ticket-endpoint > div {
    align-items: center;
    display: flex;
    gap: 9px;
}

body.page-tickets .nw-quick-ticket-endpoint > div > i {
    background: #22c55e;
    border-radius: 999px;
    height: 10px;
    width: 10px;
}

body.page-tickets .nw-quick-ticket-endpoint[data-status="offline"] > div > i {
    background: #f59e0b;
}

body.page-tickets .nw-quick-ticket-endpoint footer,
body.page-tickets .nw-quick-ticket-related article,
body.page-tickets .nw-quick-attachments,
body.page-tickets .nw-quick-draft-line {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.page-tickets .nw-quick-ticket-endpoint footer button,
body.page-tickets .nw-quick-ticket-related button,
body.page-tickets .nw-quick-attachments button,
body.page-tickets .nw-quick-draft-line button,
body.page-tickets .nw-quick-draft-line a,
body.page-tickets .nw-quick-ticket-template-list button {
    background: rgba(15, 23, 42, 0.8);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 9px;
    color: var(--nw-text-secondary);
    cursor: pointer;
    font-size: 12px;
    font-weight: 800;
    padding: 7px 9px;
    text-decoration: none;
}

body.page-tickets .nw-quick-ticket-related button:disabled {
    cursor: default;
    opacity: .48;
}

body.page-tickets .nw-quick-ticket-endpoint footer button:hover,
body.page-tickets .nw-quick-ticket-related button:hover,
body.page-tickets .nw-quick-attachments button:hover,
body.page-tickets .nw-quick-draft-line a:hover,
body.page-tickets .nw-quick-ticket-template-list button:hover {
    border-color: rgba(34, 197, 94, 0.38);
    color: var(--nw-text-primary);
}

body.page-tickets .nw-quick-ticket-template-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-quick-attachments {
    border: 1px dashed rgba(71, 85, 105, 0.82);
    border-radius: 12px;
    padding: 9px;
}

body.page-tickets .nw-quick-attachments button {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-content: center;
    line-height: 1;
    min-height: 32px;
    padding: 8px 10px;
}

body.page-tickets .nw-quick-attachments button svg,
body.page-tickets .nw-quick-attachments button i {
    display: block;
    flex: 0 0 auto;
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-quick-attachments [data-quick-attachments-list] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    width: 100%;
}

body.page-tickets .nw-quick-attachments [data-quick-attachments-list][hidden] {
    display: none !important;
}

body.page-tickets .nw-quick-attachments span {
    align-items: center;
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 999px;
    color: #dbeafe;
    display: inline-flex;
    gap: 6px;
    padding: 5px 8px;
}

body.page-tickets .nw-quick-ticket-related header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

body.page-tickets .nw-quick-ticket-related header div {
    display: grid;
    gap: 2px;
}

body.page-tickets .nw-quick-ticket-related header em {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 999px;
    color: #86efac;
    font-style: normal;
    font-weight: 900;
    padding: 4px 8px;
}

body.page-tickets .nw-quick-ticket-related [data-quick-related-list] {
    display: grid;
    gap: 7px;
}

body.page-tickets .nw-quick-related-search {
    display: grid;
    gap: 5px;
}

body.page-tickets .nw-quick-related-search span {
    color: var(--nw-text-label);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

body.page-tickets .nw-quick-related-search input {
    background: #050a12;
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 9px;
    color: var(--nw-text-primary);
    padding: 8px 9px;
}

body.page-tickets .nw-quick-linked-related {
    align-items: center;
    background: rgba(34, 197, 94, 0.08);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 7px;
}

body.page-tickets .nw-quick-linked-related[hidden] {
    display: none !important;
}

body.page-tickets .nw-quick-linked-related > strong {
    color: #bbf7d0;
    font-size: 12px;
}

body.page-tickets .nw-quick-linked-related > div {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

body.page-tickets .nw-quick-linked-related span {
    align-items: center;
    background: rgba(15, 23, 42, 0.75);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 999px;
    color: var(--nw-text-secondary);
    display: inline-flex;
    font-size: 11px;
    gap: 5px;
    padding: 4px 7px;
}

body.page-tickets .nw-quick-linked-related span button {
    background: transparent;
    border: 0;
    color: var(--nw-text-muted);
    cursor: pointer;
    font: inherit;
    padding: 0;
}

body.page-tickets .nw-quick-related-block {
    display: grid;
    gap: 6px;
}

body.page-tickets .nw-quick-related-block > strong {
    color: var(--nw-text-label);
    font-size: 10px;
    letter-spacing: .05em;
    text-transform: uppercase;
}

body.page-tickets .desk-description,
body.page-tickets .desk-detail-section#overview > p,
body.page-tickets .nw-drawer-card > p {
    white-space: pre-line;
}

body.page-tickets .nw-quick-ticket-related article {
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.66);
    border-radius: 10px;
    justify-content: space-between;
    padding: 8px;
}

body.page-tickets .nw-quick-ticket-related article div {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.page-tickets .nw-quick-draft-line {
    color: #8da0b7;
    font-size: 12px;
    justify-content: space-between;
}

@media (max-width: 760px) {
    body.page-tickets .nw-ticket-drawer-panel {
        width: min(100vw, 680px);
    }

    body.page-tickets .nw-quick-ticket-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1180px) {
    body.page-tickets .nw-new-ticket-layout {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-new-ticket-sidebar {
        position: static;
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-new-ticket-header,
    body.page-tickets .nw-new-section__header {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-tickets .nw-new-progress,
    body.page-tickets .nw-form-grid,
    body.page-tickets .nw-rmm-alert-fields {
        grid-template-columns: 1fr;
    }

    body.page-tickets .nw-new-ticket-actions {
        justify-content: flex-start;
    }
}

/* NightOwl typography hierarchy: keep operational values strong while metadata stays quieter. */
body.page-tickets .page-title,
body.page-tickets .desk-ticket-title,
body.page-tickets .desk-editable-title h1,
body.page-tickets .desk-row-preview strong,
body.page-tickets .desk-form-panel h2,
body.page-tickets .desk-panel h2,
body.page-tickets .desk-activity-item strong,
body.page-tickets .desk-sla-progress strong,
body.page-tickets .desk-sla-gauge strong,
body.page-tickets .nw-category-name,
body.page-tickets .nw-category-table td,
body.page-tickets .nw-settings-header h1,
body.page-tickets .nw-settings-panel h2,
body.page-tickets .nw-settings-side-card h2,
body.page-tickets .nw-settings-card h3,
body.page-tickets .nw-settings-card dd,
body.page-tickets .nw-settings-side-card dd,
body.page-tickets .nw-related-preview-shell h3,
body.page-tickets .nw-related-preview-shell dd,
body.page-tickets .nw-related-modal__dialog h3,
body.page-tickets .nw-review-summary dd,
body.page-tickets .nw-ticket-drawer-header h2,
body.page-tickets .nw-quick-autocomplete strong,
body.page-tickets .nw-quick-ticket-summary strong,
body.page-tickets .nw-quick-ticket-endpoint strong,
body.page-tickets .nw-quick-ticket-related strong {
    color: var(--nw-text-primary);
}

body.page-tickets .page-subtitle,
body.page-tickets .desk-btn,
body.page-tickets .nav-item,
body.page-tickets .topbar-status,
body.page-tickets .nw-settings-header p,
body.page-tickets .nw-settings-panel p,
body.page-tickets .nw-settings-side-card span,
body.page-tickets .nw-settings-card p,
body.page-tickets .nw-settings-tabs button,
body.page-tickets .nw-settings-filters button,
body.page-tickets .nw-settings-card footer button,
body.page-tickets .nw-settings-quick-actions button,
body.page-tickets .nw-category-action-menu button,
body.page-tickets .nw-settings-confirm p,
body.page-tickets .nw-record-type-panel p,
body.page-tickets .nw-record-type-strip button,
body.page-tickets .nw-ticket-drawer-header p,
body.page-tickets .nw-quick-ticket-endpoint footer button,
body.page-tickets .nw-quick-ticket-related button,
body.page-tickets .nw-quick-attachments button,
body.page-tickets .nw-quick-draft-line button,
body.page-tickets .nw-quick-draft-line a,
body.page-tickets .nw-quick-ticket-template-list button {
    color: var(--nw-text-secondary);
}

body.page-tickets .brand-subtitle,
body.page-tickets .nav-group-label,
body.page-tickets .topbar-kicker,
body.page-tickets .desk-ticket-meta,
body.page-tickets .desk-ticket-side,
body.page-tickets .desk-mini-flag,
body.page-tickets .desk-muted,
body.page-tickets .desk-presence-indicator,
body.page-tickets .desk-detail-tabbar a,
body.page-tickets .desk-row-preview p,
body.page-tickets .desk-row-preview small,
body.page-tickets .desk-comment span,
body.page-tickets .desk-comment p,
body.page-tickets .desk-sla-progress span,
body.page-tickets .desk-sla-gauge span,
body.page-tickets .nw-related-total,
body.page-tickets .nw-related-item--selectable > button small,
body.page-tickets .nw-related-preview-empty p,
body.page-tickets .nw-related-preview-shell p,
body.page-tickets .nw-related-modal__dialog p,
body.page-tickets .nw-related-search,
body.page-tickets .nw-settings-empty,
body.page-tickets .nw-settings-coming-soon span,
body.page-tickets .nw-quick-autocomplete span,
body.page-tickets .nw-quick-autocomplete p,
body.page-tickets .nw-quick-ticket-summary small,
body.page-tickets .nw-quick-ticket-endpoint small,
body.page-tickets .nw-quick-ticket-endpoint p,
body.page-tickets .nw-quick-ticket-related span,
body.page-tickets .nw-quick-ticket-related p,
body.page-tickets .nw-quick-draft-line {
    color: var(--nw-text-muted);
}

body.page-tickets .nw-category-table th,
body.page-tickets .nw-settings-card dt,
body.page-tickets .nw-settings-side-card dt,
body.page-tickets .nw-settings-drawer-form span,
body.page-tickets .nw-related-preview-shell dt,
body.page-tickets .nw-related-modal__dialog header span,
body.page-tickets .nw-related-modal__dialog .nw-form-field > span,
body.page-tickets .nw-auto-context-card dt,
body.page-tickets .nw-review-summary dt,
body.page-tickets .nw-quick-ticket-field > span {
    color: var(--nw-text-label);
}

body.page-tickets .nw-category-table th {
    color: var(--nw-table-heading);
}

body.page-tickets .desk-detail-tabbar a.active,
body.page-tickets .desk-detail-tabbar a:hover,
body.page-tickets .nav-item:hover,
body.page-tickets .nav-item.active,
body.page-tickets .desk-btn:hover,
body.page-tickets .nw-settings-tabs button.is-active,
body.page-tickets .nw-settings-tabs button:hover,
body.page-tickets .nw-settings-filters button.is-active,
body.page-tickets .nw-settings-filters button:hover,
body.page-tickets .nw-settings-card footer button:hover,
body.page-tickets .nw-settings-quick-actions button:hover,
body.page-tickets .nw-category-actions button:hover,
body.page-tickets .nw-category-action-menu button:hover,
body.page-tickets .nw-record-type-strip button:hover,
body.page-tickets .nw-record-type-strip button.is-active,
body.page-tickets .nw-ticket-drawer-header .desk-icon-button[data-quick-ticket-close]:hover,
body.page-tickets .nw-quick-ticket-endpoint footer button:hover,
body.page-tickets .nw-quick-ticket-related button:hover,
body.page-tickets .nw-quick-attachments button:hover,
body.page-tickets .nw-quick-draft-line a:hover,
body.page-tickets .nw-quick-ticket-template-list button:hover {
    color: var(--nw-text-primary);
}

body.page-tickets .desk-btn-primary,
body.page-tickets .desk-btn-primary:hover {
    color: #04100b;
}
/* Global e-mail outbox */
.maintenance-subnav {
    align-items: center;
    background: #0b0f15;
    border: 1px solid #1f2937;
    border-radius: 8px;
    display: flex;
    gap: 6px;
    margin: 0 0 14px;
    padding: 5px;
}

.maintenance-subnav a {
    align-items: center;
    border-radius: 6px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    gap: 7px;
    padding: 8px 11px;
    text-decoration: none;
}

.maintenance-subnav a:hover,
.maintenance-subnav a.is-active {
    background: rgba(34, 197, 94, 0.12);
    color: #86efac;
}

.maintenance-subnav svg {
    height: 15px;
    width: 15px;
}

.email-outbox-header {
    align-items: center;
    background: #0b0f15;
    border: 1px solid #1f2937;
    border-top: 2px solid #22c55e;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    padding: 14px 16px;
}

.email-outbox-header > div,
.email-outbox-header__actions {
    align-items: center;
    display: flex;
    gap: 10px;
}

.email-outbox-icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.28);
    border-radius: 7px;
    color: #4ade80;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.email-outbox-header h1 {
    color: #f8fafc;
    font-size: 22px;
    margin: 0 0 3px;
}

.email-outbox-header p {
    color: #94a3b8;
    font-size: 13px;
    margin: 0;
}

.email-outbox-header__actions form,
.email-row-actions form,
.email-detail-drawer footer form {
    margin: 0;
}

.email-smtp-state {
    align-items: center;
    background: #111827;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 6px;
    padding: 7px 9px;
}

.email-smtp-state svg {
    height: 14px;
    width: 14px;
}

.email-smtp-state--configured {
    border-color: rgba(34, 197, 94, 0.32);
    color: #86efac;
}

.email-smtp-state--conflict {
    border-color: rgba(239, 68, 68, 0.35);
    color: #fca5a5;
}

.email-smtp-state--incomplete {
    border-color: rgba(245, 158, 11, 0.32);
    color: #fcd34d;
}

.email-outbox-metrics {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 12px;
}

.email-outbox-metrics article {
    align-items: center;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 8px;
    display: grid;
    gap: 3px 10px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 12px;
}

.email-outbox-metrics svg {
    color: #38bdf8;
    grid-row: 1 / 3;
    height: 18px;
    width: 18px;
}

.email-outbox-metrics span {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 600;
}

.email-outbox-metrics strong {
    color: #f8fafc;
    font-size: 22px;
    grid-column: 3;
    grid-row: 1 / 3;
}

.email-outbox-metrics .is-success svg { color: #22c55e; }
.email-outbox-metrics .is-error svg { color: #ef4444; }
.email-outbox-metrics .is-muted svg { color: #94a3b8; }

.email-outbox-notice {
    align-items: center;
    background: rgba(34, 197, 94, 0.08);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 7px;
    color: #bbf7d0;
    display: flex;
    font-size: 12px;
    gap: 8px;
    margin-bottom: 12px;
    padding: 9px 11px;
}

.email-outbox-notice.is-warning {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.22);
    color: #fde68a;
}

.email-outbox-notice svg {
    height: 15px;
    width: 15px;
}

.email-outbox-panel {
    background: #0b0f15;
    border: 1px solid #1f2937;
    border-radius: 8px;
    overflow: hidden;
}

.email-outbox-quick-filters {
    align-items: center;
    border-bottom: 1px solid #1f2937;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 8px 10px;
}

.email-outbox-quick-filters a {
    background: #111827;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
    padding: 5px 9px;
    text-decoration: none;
}

.email-outbox-quick-filters a:hover {
    border-color: rgba(34, 197, 94, 0.36);
    color: #86efac;
}

.email-outbox-toolbar {
    align-items: center;
    border-bottom: 1px solid #1f2937;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px;
}

.email-outbox-toolbar > label:first-child {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 7px;
    display: flex;
    flex: 1 1 320px;
    gap: 8px;
    padding: 0 10px;
}

.email-outbox-toolbar input[type="search"],
.email-outbox-toolbar select {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 7px;
    color: #dce7e1;
    font: inherit;
    min-height: 36px;
    padding: 7px 9px;
}

.email-outbox-toolbar input[type="search"] {
    border: 0;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.email-outbox-toolbar svg {
    color: #22c55e;
    height: 15px;
    width: 15px;
}

.email-outbox-today {
    align-items: center;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 12px;
    gap: 6px;
}

.email-outbox-table-wrap {
    overflow-x: auto;
}

.email-outbox-table {
    border-collapse: collapse;
    min-width: 1250px;
    width: 100%;
}

.email-outbox-table th,
.email-outbox-table td {
    border-bottom: 1px solid rgba(31, 41, 55, 0.8);
    padding: 9px 10px;
    text-align: left;
    vertical-align: middle;
}

.email-outbox-table th {
    color: #7b9186;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.email-outbox-table td {
    color: #cbd5e1;
    font-size: 12px;
}

.email-outbox-table tbody tr:hover {
    background: #111827;
}

.email-outbox-table td strong,
.email-outbox-table td small {
    display: block;
}

.email-outbox-table td small {
    color: #7b9186;
    margin-top: 2px;
}

.email-outbox-table code,
.email-attempts {
    color: #a7f3d0;
    font-family: var(--font-mono);
    font-size: 11px;
}

.email-status,
.email-source {
    border: 1px solid #263241;
    border-radius: 999px;
    display: inline-flex;
    font-size: 10px;
    font-weight: 800;
    padding: 4px 7px;
}

.email-status--pending,
.email-status--sending { border-color: rgba(56, 189, 248, 0.3); color: #7dd3fc; }
.email-status--sent { border-color: rgba(34, 197, 94, 0.3); color: #86efac; }
.email-status--failed { border-color: rgba(239, 68, 68, 0.35); color: #fca5a5; }
.email-status--skipped,
.email-status--cancelled { color: #94a3b8; }
.email-source { color: #86efac; }

.email-error-preview {
    color: #fca5a5;
    display: block;
    max-width: 220px;
}

.email-row-actions {
    align-items: center;
    display: flex;
    gap: 4px;
}

.email-row-actions button {
    align-items: center;
    background: #111827;
    border: 1px solid #263241;
    border-radius: 6px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    height: 29px;
    justify-content: center;
    width: 29px;
}

.email-row-actions button:hover {
    border-color: rgba(34, 197, 94, 0.4);
    color: #86efac;
}

.email-row-actions svg {
    height: 14px;
    width: 14px;
}

body.email-drawer-open {
    overflow: hidden;
}

.email-detail-drawer {
    inset: 0;
    position: fixed;
    z-index: 980;
}

.email-detail-drawer[hidden] {
    display: none;
}

.email-detail-drawer__backdrop {
    background: rgba(0, 0, 0, 0.68);
    border: 0;
    inset: 0;
    position: absolute;
    width: 100%;
}

.email-detail-drawer > section {
    background: #0b0f15;
    border-left: 1px solid #263241;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    height: 100%;
    margin-left: auto;
    max-width: 620px;
    position: relative;
    width: min(620px, 100%);
}

.email-detail-drawer header,
.email-detail-drawer footer {
    align-items: center;
    border-bottom: 1px solid #1f2937;
    display: flex;
    justify-content: space-between;
    padding: 14px 16px;
}

.email-detail-drawer footer {
    border-bottom: 0;
    border-top: 1px solid #1f2937;
    gap: 8px;
    justify-content: flex-end;
}

.email-detail-drawer [data-email-ticket][hidden] {
    display: none !important;
}

.email-detail-drawer header span,
.email-detail-block > span,
.email-detail-grid span {
    color: #7b9186;
    display: block;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.email-detail-drawer h2 {
    color: #f8fafc;
    font-size: 18px;
    margin: 3px 0 0;
}

.email-detail-drawer header > button {
    background: transparent;
    border: 0;
    color: #94a3b8;
    cursor: pointer;
}

.email-detail-drawer__body {
    min-height: 0;
    overflow-y: auto;
    padding: 14px;
}

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

.email-detail-grid article,
.email-detail-block {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 7px;
    padding: 10px;
}

.email-detail-grid strong,
.email-detail-block strong {
    color: #e2e8f0;
    display: block;
    margin-top: 5px;
}

.email-detail-block {
    margin-top: 8px;
}

.email-detail-block pre {
    color: #cbd5e1;
    font-family: var(--font-mono);
    font-size: 11px;
    line-height: 1.5;
    margin: 7px 0 0;
    max-height: 260px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
}

.email-detail-block.is-error pre {
    color: #fca5a5;
}

.email-preview__tabs {
    border-bottom: 1px solid #1f2937;
    display: flex;
    gap: 4px;
    margin: 8px 0 0;
    padding-bottom: 7px;
}

.email-preview__tabs button {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 6px;
    color: #94a3b8;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 700;
    padding: 6px 9px;
}

.email-preview__tabs button:hover,
.email-preview__tabs button.is-active {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.24);
    color: #86efac;
}

.email-preview__tabs button:disabled {
    cursor: not-allowed;
    opacity: 0.42;
}

.email-preview__pane {
    margin-top: 9px;
}

.email-preview__pane[hidden] {
    display: none;
}

.email-preview__pane iframe {
    background: #0b1117;
    border: 1px solid #263241;
    border-radius: 7px;
    display: block;
    height: 520px;
    width: 100%;
}

.email-preview__pane > p {
    color: #94a3b8;
    font-size: 12px;
    margin: 12px 0 2px;
}

@media (max-width: 900px) {
    .email-outbox-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .email-outbox-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .email-outbox-metrics,
    .email-detail-grid {
        grid-template-columns: 1fr;
    }

    .email-outbox-header__actions {
        flex-wrap: wrap;
    }
}

/* NightOwl Desk requester portal */
body.page-ticket-portal {
    background: #050609;
}

body.page-ticket-portal .app-shell {
    grid-template-columns: 1fr;
}

body.page-ticket-portal .main-area {
    min-width: 0;
}

body.page-ticket-portal .content {
    max-width: 1180px;
    width: 100%;
}

.desk-portal-breadcrumbs {
    color: #94a3b8;
}

.desk-portal-header {
    align-items: center;
    background:
        radial-gradient(circle at top left, rgba(34, 197, 94, 0.14), transparent 34%),
        #0b1117;
    border: 1px solid #1f2937;
    border-radius: 14px;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding: 20px;
}

.desk-portal-header > div {
    align-items: center;
    display: flex;
    gap: 14px;
}

.desk-portal-header__icon {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.3);
    border-radius: 12px;
    color: #86efac;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.desk-portal-header p {
    color: #86efac;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    margin: 0 0 5px;
    text-transform: uppercase;
}

.desk-portal-header h1 {
    color: #f8fafc;
    font-size: 28px;
    letter-spacing: -0.04em;
    margin: 0;
}

.desk-portal-header span,
.desk-portal-header strong {
    color: #cbd5e1;
    font-size: 13px;
}

.desk-portal-header strong,
.desk-portal-back {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 999px;
    display: inline-flex;
    gap: 8px;
    padding: 9px 12px;
    text-decoration: none;
}

.desk-portal-back {
    color: #e2e8f0;
}

.desk-portal-notice {
    align-items: center;
    background: rgba(56, 189, 248, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.22);
    border-radius: 10px;
    color: #bae6fd;
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
    padding: 12px 14px;
}

.desk-portal-notice code {
    color: #a7f3d0;
    font-family: var(--font-mono);
}

.desk-portal-toolbar,
.desk-portal-filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 14px;
}

.desk-portal-toolbar label {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #22c55e;
    display: flex;
    flex: 1 1 320px;
    gap: 10px;
    min-height: 42px;
    padding: 0 12px;
}

.desk-portal-toolbar input {
    background: transparent;
    border: 0;
    color: #f8fafc;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.desk-portal-toolbar button,
.desk-portal-toolbar a,
.desk-portal-action,
.desk-portal-form button {
    align-items: center;
    background: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.55);
    border-radius: 10px;
    color: #04100b;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    min-height: 42px;
    padding: 0 14px;
    text-decoration: none;
}

.desk-portal-toolbar a {
    background: #0d1117;
    border-color: #263241;
    color: #cbd5e1;
}

.desk-portal-filters a {
    align-items: center;
    background: #0d1117;
    border: 1px solid #263241;
    border-radius: 999px;
    color: #cbd5e1;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    gap: 8px;
    padding: 9px 12px;
    text-decoration: none;
}

.desk-portal-filters a.is-active,
.desk-portal-filters a:hover {
    border-color: rgba(34, 197, 94, 0.45);
    color: #86efac;
}

.desk-portal-filters span {
    color: #94a3b8;
    font-family: var(--font-mono);
}

.desk-portal-list {
    display: grid;
    gap: 12px;
}

.desk-portal-ticket,
.desk-portal-card,
.desk-portal-empty {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 12px;
}

.desk-portal-ticket {
    align-items: stretch;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 16px;
}

.desk-portal-ticket.is-waiting-user {
    border-color: rgba(245, 158, 11, 0.38);
}

.desk-portal-code {
    color: #86efac;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 800;
}

.desk-portal-ticket h2,
.desk-portal-card h2 {
    color: #f8fafc;
    margin: 5px 0 0;
}

.desk-portal-ticket p,
.desk-portal-description,
.desk-portal-card p {
    color: #cbd5e1;
    line-height: 1.6;
    margin: 8px 0 0;
}

.desk-portal-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.desk-portal-meta span,
.desk-portal-waiting {
    align-items: center;
    color: #94a3b8;
    display: inline-flex;
    font-size: 12px;
    gap: 6px;
}

.desk-portal-meta svg,
.desk-portal-waiting svg {
    height: 14px;
    width: 14px;
}

.desk-portal-ticket__side {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    min-width: 180px;
}

.desk-portal-status {
    border-radius: 999px;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 7px 10px;
    text-transform: uppercase;
}

.desk-portal-status.status-new { background: rgba(56, 189, 248, 0.12); color: #7dd3fc; }
.desk-portal-status.status-in_progress { background: rgba(34, 197, 94, 0.12); color: #86efac; }
.desk-portal-status.status-waiting_user,
.desk-portal-status.status-waiting_third_party { background: rgba(245, 158, 11, 0.13); color: #fcd34d; }
.desk-portal-status.status-resolved { background: rgba(34, 197, 94, 0.14); color: #22c55e; }
.desk-portal-status.status-closed,
.desk-portal-status.status-canceled { background: rgba(148, 163, 184, 0.12); color: #cbd5e1; }

.desk-portal-waiting {
    color: #fcd34d;
}

.desk-portal-empty {
    color: #94a3b8;
    padding: 36px;
    text-align: center;
}

.desk-portal-empty svg {
    color: #22c55e;
    height: 32px;
    width: 32px;
}

.desk-portal-detail-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) 300px;
}

.desk-portal-main,
.desk-portal-side {
    display: grid;
    gap: 14px;
}

.desk-portal-card {
    padding: 16px;
}

.desk-portal-section-title {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.desk-portal-section-title svg {
    color: #22c55e;
}

.desk-portal-section-title h2 {
    font-size: 17px;
    margin: 0;
}

.desk-portal-status-card {
    background:
        linear-gradient(135deg, rgba(34, 197, 94, 0.08), transparent 40%),
        #0d1117;
}

.desk-portal-status-card h2 {
    font-size: 20px;
    line-height: 1.35;
}

.desk-portal-status-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 14px;
}

.desk-portal-status-grid span,
.desk-portal-side dl {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    padding: 12px;
}

.desk-portal-status-grid small,
.desk-portal-side dt,
.desk-portal-card > span,
.desk-portal-solution small {
    color: #7b9186;
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.desk-portal-status-grid strong,
.desk-portal-side dd,
.desk-portal-side p {
    color: #f8fafc;
    display: block;
    margin: 4px 0 0;
}

.desk-portal-timeline {
    display: grid;
    gap: 12px;
}

.desk-portal-timeline article {
    display: grid;
    gap: 12px;
    grid-template-columns: 34px minmax(0, 1fr);
}

.desk-portal-timeline article > span {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.25);
    border-radius: 999px;
    color: #86efac;
    display: flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.desk-portal-timeline strong {
    color: #f8fafc;
}

.desk-portal-timeline small {
    color: #94a3b8;
    display: block;
    margin-top: 3px;
}

.desk-portal-attachments,
.desk-portal-attachment-inline {
    display: grid;
    gap: 8px;
}

.desk-portal-attachments a,
.desk-portal-attachment-inline a {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #e2e8f0;
    display: flex;
    gap: 10px;
    padding: 11px;
    text-decoration: none;
}

.desk-portal-attachments svg,
.desk-portal-attachment-inline svg {
    color: #22c55e;
}

.desk-portal-attachments small {
    color: #94a3b8;
    display: block;
    margin-top: 2px;
}

.desk-portal-form {
    display: grid;
    gap: 10px;
}

.desk-portal-form textarea {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 10px;
    color: #f8fafc;
    line-height: 1.5;
    padding: 12px;
    resize: vertical;
}

.desk-portal-form textarea:focus {
    border-color: rgba(34, 197, 94, 0.55);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
    outline: 0;
}

.desk-portal-file {
    align-items: center;
    background: #080b10;
    border: 1px dashed #263241;
    border-radius: 10px;
    color: #cbd5e1;
    cursor: pointer;
    display: flex;
    gap: 10px;
    padding: 12px;
}

.desk-portal-file input {
    color: #94a3b8;
}

.desk-portal-side {
    align-content: start;
}

.desk-portal-side dl {
    display: grid;
    gap: 8px;
    margin: 10px 0 0;
}

.desk-portal-side dd {
    margin-left: 0;
}

.desk-portal-closed {
    align-items: center;
    color: #cbd5e1;
    display: flex;
    gap: 10px;
}

.desk-portal-closed svg,
.desk-portal-solution svg {
    color: #22c55e;
}

@media (max-width: 900px) {
    .desk-portal-header,
    .desk-portal-ticket {
        align-items: flex-start;
        grid-template-columns: 1fr;
    }

    .desk-portal-header {
        flex-direction: column;
    }

    .desk-portal-ticket__side {
        align-items: flex-start;
        min-width: 0;
    }

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

@media (max-width: 560px) {
    .desk-portal-status-grid {
        grid-template-columns: 1fr;
    }
}

/* Authentication */
body.page-login {
    background: #05080d;
}

body.page-login .app-shell {
    display: block;
    min-height: 100vh;
}

body.page-login .sidebar,
body.page-login .topbar {
    display: none;
}

body.page-login .main-area,
body.page-login .content {
    min-height: 100vh;
    padding: 0;
}

.login-split-shell {
    background:
        radial-gradient(circle at 18% 18%, rgba(124, 58, 237, 0.32), transparent 34%),
        radial-gradient(circle at 78% 78%, rgba(34, 197, 94, 0.14), transparent 28%),
        #05080d;
    color: #f3f6fb;
    display: grid;
    grid-template-columns: minmax(0, 1.9fr) minmax(430px, 0.85fr);
    min-height: 100vh;
}

.login-brand-panel,
.login-form-panel {
    align-items: center;
    display: flex;
    min-height: 100vh;
}

.login-brand-panel {
    justify-content: center;
    overflow: hidden;
    padding: clamp(32px, 4.8vw, 72px);
    position: relative;
}

.login-brand-panel::before {
    background:
        linear-gradient(135deg, rgba(124, 58, 237, 0.14), transparent 45%),
        linear-gradient(180deg, rgba(8, 13, 20, 0.6), rgba(5, 8, 13, 0.18));
    border: 1px solid rgba(124, 58, 237, 0.18);
    border-radius: 36px;
    content: "";
    inset: clamp(16px, 2.7vw, 38px);
    position: absolute;
}

.login-watermark {
    bottom: clamp(-84px, -6vw, -42px);
    filter: grayscale(1) brightness(0.52) contrast(1.22);
    left: clamp(-82px, -5vw, -40px);
    opacity: 0.105;
    pointer-events: none;
    position: absolute;
    user-select: none;
    width: clamp(500px, 47vw, 820px);
    z-index: 0;
}

.login-brand-panel__inner {
    align-items: center;
    display: grid;
    justify-items: center;
    max-width: 680px;
    position: relative;
    text-align: center;
    z-index: 1;
}

.login-hero-logo {
    display: block;
    filter: drop-shadow(0 28px 70px rgba(124, 58, 237, 0.28));
    margin: 0 0 20px;
    max-width: min(460px, 40vw);
    object-fit: contain;
    position: relative;
    width: 100%;
}

.login-brand-kicker,
.login-card__header p {
    color: #86efac;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    margin: 4px 0 10px;
    text-transform: uppercase;
}

.login-brand-panel h1 {
    color: #f3f6fb;
    font-size: clamp(46px, 5.2vw, 78px);
    font-weight: 900;
    letter-spacing: -0.07em;
    line-height: 0.95;
    margin: 0;
}

.login-brand-panel h1 span {
    color: #22c55e;
}

.login-brand-panel strong {
    color: #f3f6fb;
    display: block;
    font-size: clamp(18px, 2vw, 28px);
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-top: 20px;
}

.login-brand-panel p:not(.login-brand-kicker) {
    color: #b8c4d6;
    font-size: 16px;
    line-height: 1.65;
    margin: 14px 0 0;
    max-width: 560px;
}

.login-brand-signals {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 28px;
}

.login-brand-signals span {
    align-items: center;
    background: rgba(11, 17, 23, 0.74);
    border: 1px solid rgba(124, 58, 237, 0.24);
    border-radius: 999px;
    color: #d8d3ff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 8px;
    height: 34px;
    justify-content: center;
    line-height: 1;
    padding: 0 12px;
}

.login-brand-signals svg,
.login-card__header svg,
.login-card__footer svg,
.login-error svg,
.login-card button svg {
    display: block;
    flex: 0 0 auto;
    height: 16px;
    width: 16px;
}

.login-form-panel {
    background:
        linear-gradient(180deg, rgba(8, 13, 20, 0.94), rgba(5, 8, 13, 0.98));
    border-left: 1px solid rgba(124, 58, 237, 0.2);
    justify-content: center;
    padding: clamp(22px, 3vw, 48px);
}

.login-card {
    background:
        radial-gradient(circle at top right, rgba(124, 58, 237, 0.2), transparent 36%),
        #0b1117;
    border: 1px solid #263244;
    border-radius: 22px;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.42);
    display: flex;
    flex-direction: column;
    min-height: clamp(640px, calc(100vh - 96px), 840px);
    padding: clamp(40px, 4.6vh, 58px);
    width: min(520px, 100%);
}

.login-card__header {
    align-items: flex-start;
    display: flex;
    gap: 18px;
}

.login-card__icon {
    align-items: center;
    background: rgba(124, 58, 237, 0.14);
    border: 1px solid rgba(124, 58, 237, 0.38);
    border-radius: 12px;
    color: #c4b5fd;
    display: inline-flex;
    flex: 0 0 auto;
    height: 42px;
    justify-content: center;
    margin-top: 2px;
    width: 42px;
}

.login-card__header .login-card__icon {
    display: inline-flex;
    line-height: 1;
    margin-top: 2px;
}

.login-card__icon svg {
    height: 18px;
    stroke-width: 2;
    width: 18px;
}

.login-card__header p {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    margin: 0 0 6px;
}

.login-card h2 {
    color: #f3f6fb;
    font-size: clamp(32px, 3.3vh, 40px);
    font-weight: 900;
    letter-spacing: -0.045em;
    margin: 0;
}

.login-card__header > div > span {
    color: #b8c4d6;
    display: block;
    font-size: 14px;
    line-height: 1.55;
    margin-top: 8px;
}

.login-card form {
    display: grid;
    gap: clamp(18px, 2.5vh, 26px);
    margin-top: clamp(36px, 5vh, 58px);
}

.login-card label {
    display: grid;
    gap: 12px;
}

.login-card label span {
    color: #d7e0ee;
    font-size: 13px;
    font-weight: 850;
}

.login-card input[type="text"],
.login-card input[type="password"] {
    background: #101826;
    border: 1px solid #263244;
    border-radius: 12px;
    color: #f3f6fb;
    font-size: 15px;
    font-weight: 600;
    min-height: clamp(56px, 6.1vh, 66px);
    padding: 0 18px;
    width: 100%;
}

.login-card input[type="text"]::placeholder,
.login-card input[type="password"]::placeholder {
    color: #7f8fa6;
}

.login-card input:focus {
    border-color: rgba(124, 58, 237, 0.76);
    box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.16);
    outline: 0;
}

.login-card button {
    align-items: center;
    background: #22c55e;
    border: 0;
    border-radius: 12px;
    color: #04100b;
    cursor: pointer;
    display: inline-flex;
    font-weight: 900;
    gap: 8px;
    justify-content: center;
    font-size: 15px;
    min-height: clamp(56px, 6.1vh, 66px);
    transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
    width: 100%;
}

.login-card button:hover {
    background: #34d399;
    box-shadow: 0 18px 42px rgba(34, 197, 94, 0.22);
    transform: translateY(-1px);
}

.login-error {
    align-items: center;
    background: rgba(239, 68, 68, 0.12);
    border: 1px solid rgba(239, 68, 68, 0.28);
    border-radius: 12px;
    color: #fecaca;
    display: flex;
    font-size: 13px;
    font-weight: 700;
    gap: 8px;
    margin-top: clamp(22px, 3vh, 32px);
    padding: 14px 16px;
}

.login-card__footer {
    border-top: 1px solid rgba(38, 50, 68, 0.8);
    display: grid;
    gap: 12px;
    margin-top: auto;
    padding-top: clamp(22px, 3vh, 34px);
}

.login-card__footer span,
.login-card__footer a {
    align-items: center;
    color: #a9b8ca;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    gap: 8px;
    text-decoration: none;
}

.login-card__footer a:hover {
    color: #86efac;
}

@media (max-width: 1500px) and (min-width: 981px) {
    .login-split-shell {
        grid-template-columns: minmax(0, 1.65fr) minmax(410px, 0.82fr);
    }

    .login-brand-panel {
        padding: clamp(24px, 3vw, 42px);
    }

    .login-hero-logo {
        max-width: min(380px, 34vw);
    }

    .login-brand-panel h1 {
        font-size: clamp(42px, 4.5vw, 64px);
    }

    .login-brand-panel strong {
        font-size: clamp(17px, 1.8vw, 23px);
    }

    .login-form-panel {
        padding: 22px 30px;
    }

    .login-card {
        min-height: calc(100vh - 70px);
        padding: clamp(34px, 4vh, 46px);
        width: min(500px, 100%);
    }

    .login-card form {
        margin-top: clamp(30px, 4vh, 42px);
    }
}

@media (max-width: 980px) {
    .login-split-shell {
        grid-template-columns: 1fr;
    }

    .login-brand-panel,
    .login-form-panel {
        min-height: auto;
    }

    .login-brand-panel {
        padding: 42px 20px 22px;
    }

    .login-brand-panel::before {
        inset: 14px;
    }

    .login-watermark {
        bottom: -86px;
        left: 50%;
        opacity: 0.06;
        transform: translateX(-50%);
        width: min(560px, 92vw);
    }

    .login-form-panel {
        border-left: 0;
        padding: 22px 20px 38px;
    }

    .login-card {
        min-height: auto;
        width: min(700px, 100%);
    }

    .login-brand-panel p:not(.login-brand-kicker) {
        display: none;
    }
}

@media (max-width: 560px) {
    .login-hero-logo {
        margin-bottom: 12px;
        max-width: min(300px, 78vw);
    }

    .login-brand-panel h1 {
        font-size: 42px;
    }

    .login-brand-panel strong {
        font-size: 16px;
    }

    .login-brand-signals {
        display: none;
    }

    .login-card {
        border-radius: 18px;
        min-height: auto;
        padding: 28px;
    }

    .login-card__header {
        align-items: flex-start;
        gap: 12px;
    }
}

/* Requester center MVP */
body.desk-portal-drawer-open {
    overflow: hidden;
}

.desk-portal-header__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.desk-portal-primary,
.desk-portal-create-form button[type="submit"] {
    align-items: center;
    background: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.55);
    border-radius: 12px;
    color: #04110a;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    text-decoration: none;
}

.desk-portal-secondary {
    align-items: center;
    background: #0d1117 !important;
    border: 1px solid #263241 !important;
    border-radius: 12px;
    color: #cbd5e1 !important;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
}

.desk-portal-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.desk-portal-metrics article {
    background:
        linear-gradient(135deg, rgba(34, 197, 94, 0.055), transparent 46%),
        #0d1117;
    border: 1px solid #263241;
    border-radius: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
    min-height: 92px;
    padding: 16px;
}

.desk-portal-metrics span {
    color: #f8fafc;
    display: block;
    font-family: var(--font-display);
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}

.desk-portal-metrics small {
    color: #94a3b8;
    display: block;
    font-size: 12px;
    font-weight: 700;
    margin-top: 6px;
}

.desk-portal-center-grid {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 7fr) minmax(320px, 3fr);
}

.desk-portal-ticket {
    cursor: pointer;
    transition: border-color 140ms ease, transform 140ms ease, background 140ms ease;
}

.desk-portal-ticket:hover,
.desk-portal-ticket:focus-visible,
.desk-portal-ticket.is-selected {
    background:
        linear-gradient(135deg, rgba(34, 197, 94, 0.055), transparent 42%),
        #0d1117;
    border-color: rgba(34, 197, 94, 0.36);
    outline: none;
}

.desk-portal-preview {
    position: sticky;
    top: 18px;
}

.desk-portal-preview .desk-portal-card {
    display: grid;
    gap: 13px;
}

.desk-portal-preview h2 {
    font-size: 20px;
    line-height: 1.2;
    margin: -4px 0 0;
}

.desk-portal-preview dl {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 12px;
}

.desk-portal-preview dt,
.desk-portal-preview small {
    color: #7b9186;
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.desk-portal-preview dd {
    color: #f8fafc;
    font-weight: 700;
    margin: 0 0 4px;
}

.desk-portal-preview section {
    background: rgba(8, 11, 16, 0.62);
    border: 1px solid rgba(38, 50, 65, 0.74);
    border-radius: 12px;
    padding: 12px;
}

.desk-portal-preview section p {
    margin: 6px 0 0;
}

.desk-portal-preview-comment {
    background: rgba(8, 11, 16, 0.68);
    border: 1px solid rgba(38, 50, 65, 0.78);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

.desk-portal-preview-comment.is-hidden,
.desk-portal-readonly-note.is-hidden {
    display: none;
}

.desk-portal-preview-comment label {
    display: grid;
    gap: 7px;
}

.desk-portal-preview-comment textarea {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #f8fafc;
    font: inherit;
    min-height: 104px;
    outline: none;
    padding: 11px 12px;
    resize: vertical;
    width: 100%;
}

.desk-portal-preview-comment textarea:focus {
    border-color: rgba(34, 197, 94, 0.55);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

.desk-portal-preview-comment button {
    align-items: center;
    background: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.55);
    border-radius: 12px;
    color: #04110a;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
}

.desk-portal-readonly-note {
    align-items: center;
    background: rgba(148, 163, 184, 0.08);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 12px;
    color: #cbd5e1;
    display: flex;
    gap: 9px;
    padding: 12px;
}

.desk-portal-readonly-note svg {
    color: #94a3b8;
    height: 16px;
    width: 16px;
}

.desk-portal-preview-empty {
    min-height: 260px;
    place-items: center;
    text-align: center;
}

.desk-portal-preview-empty svg {
    color: #22c55e;
    height: 30px;
    width: 30px;
}

.desk-portal-drawer[hidden] {
    display: none;
}

.desk-portal-drawer {
    inset: 0;
    position: fixed;
    z-index: 80;
}

.desk-portal-drawer__backdrop {
    background: rgba(2, 6, 23, 0.72);
    inset: 0;
    position: absolute;
}

.desk-portal-drawer__panel {
    background: #0d1117;
    border-left: 1px solid #1f2937;
    box-shadow: -24px 0 60px rgba(0, 0, 0, 0.45);
    display: grid;
    gap: 18px;
    height: 100%;
    margin-left: auto;
    max-width: 520px;
    overflow-y: auto;
    padding: 22px;
    position: relative;
    width: min(100%, 520px);
}

.desk-portal-drawer__panel header,
.desk-portal-drawer__panel header > div {
    align-items: center;
    display: flex;
    gap: 12px;
}

.desk-portal-drawer__panel header {
    justify-content: space-between;
}

.desk-portal-drawer__panel header span {
    align-items: center;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.35);
    border-radius: 12px;
    color: #86efac;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.desk-portal-drawer__panel header p,
.desk-portal-create-form label > span {
    color: #86efac;
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.05em;
    margin: 0 0 6px;
    text-transform: uppercase;
}

.desk-portal-drawer__panel header h2 {
    color: #f8fafc;
    font-size: 24px;
    margin: 0;
}

.desk-portal-drawer__panel header button {
    align-items: center;
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.desk-portal-create-form {
    display: grid;
    gap: 14px;
}

.desk-portal-create-form input,
.desk-portal-create-form select,
.desk-portal-create-form textarea {
    background: #080b10;
    border: 1px solid #263241;
    border-radius: 12px;
    color: #f8fafc;
    font: inherit;
    min-height: 42px;
    outline: none;
    padding: 11px 12px;
    width: 100%;
}

.desk-portal-create-form textarea {
    min-height: 140px;
    resize: vertical;
}

.desk-portal-create-form input:focus,
.desk-portal-create-form select:focus,
.desk-portal-create-form textarea:focus {
    border-color: rgba(34, 197, 94, 0.55);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

.desk-portal-create-form__grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.desk-portal-create-form footer {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    padding-top: 4px;
}

@media (max-width: 720px) {
    .desk-portal-metrics,
    .desk-portal-create-form__grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-center-grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-preview {
        position: static;
    }

    .desk-portal-header__actions,
    .desk-portal-create-form footer {
        justify-content: flex-start;
    }
}

@media (min-width: 721px) and (max-width: 1180px) {
    .desk-portal-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .desk-portal-center-grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-preview {
        position: static;
    }
}

/* Requester center layout final override */
body.page-ticket-portal .content {
    box-sizing: border-box;
    margin: 0;
    max-width: none !important;
    padding: 20px 30px !important;
    width: 100% !important;
}

body.page-ticket-portal .main-area {
    width: 100%;
}

body.page-ticket-portal .topbar {
    padding-left: 30px;
    padding-right: 30px;
}

.requester-page {
    box-sizing: border-box;
    display: grid;
    gap: 14px;
    margin-left: calc(50% - 50vw + 30px);
    margin-right: 0;
    max-width: none;
    width: calc(100vw - 60px);
}

.requester-top {
    display: grid;
    gap: 14px;
    width: 100%;
}

.desk-portal-breadcrumbs,
.desk-portal-header,
.desk-portal-metrics,
.desk-portal-toolbar,
.desk-portal-filters,
.desk-portal-center-grid,
.requester-workspace {
    width: 100%;
}

.desk-portal-header {
    box-sizing: border-box;
}

.desk-portal-metrics {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 14px;
}

.desk-portal-toolbar {
    align-items: stretch;
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 14px;
    box-sizing: border-box;
    padding: 12px;
}

.desk-portal-toolbar label {
    flex: 1 1 520px;
    min-width: min(100%, 360px);
}

.desk-portal-filters {
    background: #0d1117;
    border: 1px solid #1f2937;
    border-radius: 14px;
    box-sizing: border-box;
    padding: 12px;
}

.desk-portal-center-grid {
    align-items: start;
    display: grid;
    gap: clamp(16px, 1.5vw, 24px);
    grid-template-columns: minmax(0, 1fr) minmax(380px, 420px);
}

.desk-portal-list {
    min-width: 0;
}

.desk-portal-preview {
    min-width: 0;
    position: sticky;
    top: 18px;
}

.desk-portal-preview > .desk-portal-card {
    border-color: #263241;
    min-height: 460px;
}

.desk-portal-preview .desk-portal-status {
    justify-self: start;
}

.desk-portal-preview-comment {
    margin-top: 2px;
}

.desk-portal-ticket.is-selected {
    box-shadow: inset 3px 0 0 #22c55e;
}

@media (max-width: 1180px) {
    .desk-portal-center-grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-preview {
        position: static;
    }

    .desk-portal-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    body.page-ticket-portal .content {
        padding: 14px !important;
    }

    body.page-ticket-portal .topbar {
        padding-left: 14px;
        padding-right: 14px;
    }

    .requester-page {
        margin-left: calc(50% - 50vw + 14px);
        width: calc(100vw - 28px);
    }

    .desk-portal-metrics,
    .desk-portal-center-grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-toolbar,
    .desk-portal-filters,
    .desk-portal-header {
        align-items: stretch;
        flex-direction: column;
    }

    .desk-portal-toolbar label {
        min-width: 0;
    }
}

/* Compact requester drawer refinement */
.desk-portal-drawer__panel {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
}

.desk-portal-drawer__panel > header {
    border-bottom: 1px solid rgba(38, 50, 65, 0.78);
    flex: 0 0 auto;
    padding: 24px 24px 20px;
}

.desk-portal-drawer__panel > header > div {
    align-items: flex-start;
}

.desk-portal-drawer__panel header span {
    border-radius: 10px;
    height: 40px;
    width: 40px;
}

.desk-portal-drawer__panel header span svg {
    height: 18px;
    width: 18px;
}

.desk-portal-drawer__panel header p {
    font-size: 11px;
    margin-bottom: 5px;
}

.desk-portal-drawer__panel header h2 {
    font-size: 25px;
    line-height: 1.15;
}

.desk-portal-drawer__panel header small {
    color: #94a3b8;
    display: block;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    margin-top: 5px;
}

.desk-portal-drawer__panel header button {
    border-radius: 10px;
    height: 36px;
    margin-top: 1px;
    width: 36px;
}

.desk-portal-create-form {
    align-content: start;
    flex: 1 1 auto;
    gap: 15px;
    overflow-y: auto;
    padding: 28px 24px 24px;
}

.desk-portal-create-form label > span {
    font-size: 10px;
    margin-bottom: 5px;
}

.desk-portal-create-form input,
.desk-portal-create-form select,
.desk-portal-create-form textarea {
    border-radius: 10px;
    min-height: 41px;
    padding: 10px 11px;
}

.desk-portal-create-form textarea {
    min-height: 138px;
}

.desk-portal-create-form__grid {
    gap: 10px;
}

.desk-portal-create-form > .desk-portal-file {
    align-items: center;
    border-radius: 10px;
    gap: 10px;
    min-height: 50px;
    margin-top: 2px;
    padding: 10px 12px;
}

.desk-portal-create-form > .desk-portal-file svg {
    height: 15px;
    width: 15px;
}

.desk-portal-create-form > .desk-portal-file span {
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 800;
    margin: 0;
    text-transform: none;
}

.desk-portal-create-form > .desk-portal-file input {
    background: transparent;
    border: 0;
    color: #94a3b8;
    min-height: 0;
    padding: 0;
}

.desk-portal-create-form footer {
    background: transparent;
    border-top: 0;
    margin: 8px 0 0;
    padding: 10px 0 0;
    position: static;
}

.desk-portal-create-form footer button {
    border-radius: 10px;
    min-height: 38px;
    padding-left: 13px;
    padding-right: 13px;
}

.desk-portal-create-form footer .desk-portal-secondary {
    font-size: 12px;
    min-height: 36px;
}

@media (max-width: 640px) {
    body.page-ticket-portal .content {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    body.page-ticket-portal .topbar {
        padding-left: 18px;
        padding-right: 18px;
    }

    .requester-page {
        margin-left: calc(50% - 50vw + 18px);
        width: calc(100vw - 36px);
    }
}

/* Requester ticket detail refinement */
body.page-ticket-portal .desk-portal-header--detail {
    align-items: flex-start;
    padding: 22px;
}

body.page-ticket-portal .desk-portal-header--detail h1 {
    font-size: clamp(28px, 2.4vw, 38px);
    line-height: 1.08;
    max-width: 980px;
}

.desk-portal-detail-meta {
    align-items: center;
    color: #94a3b8;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 10px;
}

.desk-portal-detail-meta > span:not(.desk-portal-status) {
    color: #94a3b8;
    font-size: 12px;
}

.desk-portal-detail-grid {
    gap: clamp(16px, 1.5vw, 24px);
    grid-template-columns: minmax(0, 3fr) minmax(280px, 1fr);
}

.desk-portal-card {
    border-color: #263241;
}

.desk-portal-status-card {
    padding: 18px;
}

.desk-portal-status-card h2 {
    font-size: 18px;
    margin-top: 12px;
    max-width: 920px;
}

.desk-portal-status-grid {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    margin-top: 14px;
}

.desk-portal-description {
    background: rgba(8, 11, 16, 0.54);
    border: 1px solid rgba(38, 50, 65, 0.72);
    border-radius: 12px;
    padding: 12px;
}

.desk-portal-timeline {
    gap: 0;
    position: relative;
}

.desk-portal-timeline article {
    padding-bottom: 16px;
    position: relative;
}

.desk-portal-timeline article:not(:last-child)::before {
    background: rgba(38, 50, 65, 0.82);
    bottom: 0;
    content: "";
    left: 16px;
    position: absolute;
    top: 36px;
    width: 1px;
}

.desk-portal-timeline article > span {
    position: relative;
    z-index: 1;
}

.desk-portal-timeline article > div {
    background: rgba(8, 11, 16, 0.42);
    border: 1px solid rgba(38, 50, 65, 0.58);
    border-radius: 12px;
    padding: 11px 12px;
}

.desk-portal-timeline article p {
    margin-top: 8px;
}

.desk-portal-attachments p {
    color: #94a3b8;
    margin: 4px 0 0;
}

.desk-portal-reply-card {
    background:
        linear-gradient(135deg, rgba(34, 197, 94, 0.055), transparent 42%),
        #0d1117;
}

.desk-portal-form {
    gap: 12px;
}

.desk-portal-form textarea {
    min-height: 130px;
}

.desk-portal-form-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.desk-portal-form-actions .desk-portal-file {
    flex: 1 1 280px;
    margin: 0;
    min-height: 42px;
}

.desk-portal-form-actions button {
    flex: 0 0 auto;
    min-width: 150px;
}

.desk-portal-side .desk-portal-card {
    padding: 14px;
}

.desk-portal-side h2 {
    font-size: 15px;
    margin: 0 0 8px;
}

.desk-portal-side dl {
    background: transparent;
    border: 0;
    padding: 0;
}

.desk-portal-side dt {
    margin-top: 8px;
}

.desk-portal-closed {
    justify-content: flex-start;
}

@media (max-width: 980px) {
    .desk-portal-detail-grid {
        grid-template-columns: 1fr;
    }

    .desk-portal-form-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .desk-portal-form-actions button {
        width: 100%;
    }
}

/* Central Tecnica: fila mais leve, filtros concentrados e preview recolhivel. */
body.page-tickets .desk-central-workspace {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) clamp(420px, 32vw, 520px);
    transition: grid-template-columns 160ms ease;
}

body.page-tickets .desk-central-workspace.is-preview-closed {
    grid-template-columns: minmax(0, 1fr);
}

body.page-tickets .desk-central-workspace.is-preview-closed .desk-detail-panel {
    display: none;
}

body.page-tickets .desk-preview-reopen {
    align-items: center;
    background: rgba(13, 17, 23, 0.92);
    border: 1px solid rgba(38, 50, 65, 0.96);
    border-radius: 999px;
    color: #dbe7ef;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 12px;
    font-weight: 850;
    gap: 8px;
    grid-column: 1 / -1;
    justify-self: end;
    min-height: 34px;
    padding: 0 13px;
}

body.page-tickets .desk-preview-reopen[hidden] {
    display: none;
}

body.page-tickets .desk-preview-reopen:hover {
    background: rgba(34, 197, 94, 0.10);
    border-color: rgba(34, 197, 94, 0.34);
    color: #f8fafc;
}

body.page-tickets .desk-preview-reopen svg {
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-filter--drawer-only {
    display: none;
}

body.page-tickets .nw-filterbar {
    flex-wrap: wrap;
}

body.page-tickets .nw-filterbar__track {
    flex: 1 1 auto;
}

body.page-tickets .nw-filterbar__quick {
    border-right-color: rgba(148, 163, 184, 0.10);
    margin-right: 2px;
    padding-right: 8px;
}

body.page-tickets .nw-filterbar__applied {
    display: flex;
    flex: 1 0 100%;
    flex-wrap: wrap;
    gap: 6px;
    order: 3;
    padding: 1px 2px 2px;
}

body.page-tickets .nw-filterbar__applied[hidden] {
    display: none;
}

body.page-tickets .nw-filter-global-clear[hidden] {
    display: none;
}

body.page-tickets .nw-applied-filter-chip {
    align-items: center;
    background: rgba(15, 23, 42, 0.74);
    border: 1px solid rgba(38, 50, 65, 0.82);
    border-radius: 999px;
    color: #94a3b8;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 4px;
    min-height: 25px;
    padding: 0 9px;
}

body.page-tickets .nw-applied-filter-chip strong {
    color: #d1fae5;
}

body.page-tickets .nw-filter-popover--wide {
    width: min(760px, calc(100vw - 28px));
}

body.page-tickets .nw-filter-popover__advanced {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-height: min(560px, calc(100vh - 220px));
}

body.page-tickets .desk-ticket-table {
    min-width: 1040px;
}

body.page-tickets .desk-ticket-grid {
    grid-template-columns: 30px 34px minmax(300px, 2fr) minmax(140px, 0.85fr) 112px minmax(132px, 0.75fr) 128px 126px 68px;
}

body.page-tickets .desk-ticket-grid-header {
    padding: 0 8px;
}

body.page-tickets .desk-ticket-row {
    min-height: 62px;
    padding: 8px 9px;
}

body.page-tickets .desk-ticket-row > div {
    padding: 0 5px;
}

body.page-tickets .desk-row-title {
    gap: 10px;
}

body.page-tickets .desk-ticket-meta {
    gap: 6px;
}

body.page-tickets .desk-row-person,
body.page-tickets .desk-row-time {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.page-tickets .desk-row-person strong,
body.page-tickets .desk-row-time strong {
    color: #dbe7ef;
    font-size: 12px;
    font-weight: 850;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .desk-row-person small,
body.page-tickets .desk-row-time small {
    color: #7f93aa;
    font-size: 10.5px;
    font-weight: 720;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .desk-row-preview {
    display: none !important;
}

body.page-tickets .desk-row-hover-actions {
    opacity: 0.58;
    pointer-events: auto;
    transform: none;
}

body.page-tickets .desk-ticket-row:hover .desk-row-hover-actions,
body.page-tickets .desk-ticket-row:focus-within .desk-row-hover-actions {
    opacity: 1;
}

body.page-tickets .desk-preview-empty {
    position: relative;
}

body.page-tickets .desk-preview-empty-close {
    position: absolute;
    right: 14px;
    top: 14px;
}

body.page-tickets .nw-preview-attachment-list {
    display: grid;
    gap: 8px;
}

body.page-tickets .nw-preview-attachment-list span {
    align-items: center;
    background: rgba(8, 11, 16, 0.52);
    border: 1px solid rgba(38, 50, 65, 0.76);
    border-radius: 11px;
    display: grid;
    gap: 2px 8px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 9px 10px;
}

body.page-tickets .nw-preview-attachment-list svg {
    color: #86efac;
    grid-row: span 2;
    height: 15px;
    width: 15px;
}

body.page-tickets .nw-preview-attachment-list strong {
    color: #e5eef8;
    font-size: 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-tickets .nw-preview-attachment-list small {
    color: #7f93aa;
    font-size: 10.5px;
}

@media (max-width: 1320px) {
    body.page-tickets .desk-ticket-grid {
        grid-template-columns: 30px 34px minmax(260px, 1.8fr) minmax(130px, 0.8fr) 108px minmax(126px, 0.72fr) 122px 120px 64px;
    }

    body.page-tickets .nw-filter-popover__advanced {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1100px) {
    body.page-tickets .desk-central-workspace,
    body.page-tickets .desk-central-workspace.is-preview-closed {
        grid-template-columns: minmax(0, 1fr);
    }

    body.page-tickets .desk-detail-panel {
        display: grid;
        position: static;
    }

    body.page-tickets .desk-central-workspace.is-preview-closed .desk-detail-panel {
        display: none;
    }
}

@media (max-width: 760px) {
    body.page-tickets .nw-filterbar__quick {
        border-right: 0;
        padding-right: 0;
    }

    body.page-tickets .nw-filter-popover__advanced {
        grid-template-columns: 1fr;
    }

    body.page-tickets .desk-preview-reopen {
        justify-self: stretch;
        justify-content: center;
    }
}

/* Night Owl Desk - public conversation popup */
body.page-tickets .nw-public-chat {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 80;
    pointer-events: none;
}

body.page-tickets .nw-public-chat__fab {
    width: 56px;
    height: 56px;
    border: 1px solid rgba(134, 239, 172, 0.42);
    border-radius: 999px;
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #04110a;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 42px rgba(34, 197, 94, 0.28), 0 0 0 7px rgba(34, 197, 94, 0.09);
    cursor: pointer;
    pointer-events: auto;
    transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

body.page-tickets .nw-public-chat__fab:hover {
    transform: translateY(-2px);
    filter: brightness(1.04);
    box-shadow: 0 22px 52px rgba(34, 197, 94, 0.32), 0 0 0 8px rgba(34, 197, 94, 0.11);
}

body.page-tickets .nw-public-chat__fab svg {
    width: 24px;
    height: 24px;
    stroke-width: 2.4;
}

body.page-tickets .nw-public-chat__panel {
    position: absolute;
    right: 0;
    bottom: 74px;
    width: min(520px, calc(100vw - 36px));
    height: min(70vh, 680px);
    min-height: 460px;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    overflow: hidden;
    border: 1px solid rgba(38, 50, 65, 0.95);
    border-radius: 22px;
    background:
        radial-gradient(circle at 100% 0%, rgba(34, 197, 94, 0.14), transparent 38%),
        linear-gradient(180deg, #0d1117, #080b10 68%, #050609);
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.56), 0 0 0 1px rgba(34, 197, 94, 0.08);
    pointer-events: auto;
}

body.page-tickets .nw-public-chat__panel[hidden] {
    display: none;
}

body.page-tickets .nw-public-chat__header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: 12px;
    align-items: center;
    padding: 18px;
    border-bottom: 1px solid rgba(38, 50, 65, 0.9);
    background: rgba(5, 8, 13, 0.76);
    backdrop-filter: blur(12px);
}

body.page-tickets .nw-public-chat__avatar {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.28);
    color: #86efac;
}

body.page-tickets .nw-public-chat__header span {
    display: block;
    margin-bottom: 4px;
    color: #86efac;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

body.page-tickets .nw-public-chat__header h2 {
    margin: 0;
    color: #f8fafc;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.page-tickets .nw-public-chat__header p {
    margin: 4px 0 0;
    color: #94a3b8;
    font-size: 0.78rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.page-tickets .nw-public-chat__status {
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(34, 197, 94, 0.28);
    background: rgba(20, 83, 45, 0.28);
    color: #86efac;
    font-size: 0.68rem;
    font-weight: 800;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.page-tickets .nw-public-chat__messages {
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 18px;
    overflow-y: auto;
    scrollbar-color: rgba(34, 197, 94, 0.36) rgba(15, 23, 42, 0.44);
}

body.page-tickets .nw-public-chat__empty {
    margin: auto;
    max-width: 300px;
    text-align: center;
    color: #94a3b8;
}

body.page-tickets .nw-public-chat__empty svg {
    width: 40px;
    height: 40px;
    margin-bottom: 12px;
    color: #22c55e;
}

body.page-tickets .nw-public-chat__empty strong,
body.page-tickets .nw-public-chat__empty span {
    display: block;
}

body.page-tickets .nw-public-chat__empty strong {
    color: #f8fafc;
    font-size: 0.96rem;
    margin-bottom: 6px;
}

body.page-tickets .nw-public-chat-message {
    display: flex;
}

body.page-tickets .nw-public-chat-message > div {
    max-width: 84%;
    padding: 11px 13px;
    border-radius: 16px;
    border: 1px solid rgba(38, 50, 65, 0.9);
    background: #111827;
    color: #dce7e1;
}

body.page-tickets .nw-public-chat-message.is-team {
    justify-content: flex-end;
}

body.page-tickets .nw-public-chat-message.is-team > div {
    border-color: rgba(34, 197, 94, 0.36);
    background: linear-gradient(180deg, rgba(20, 83, 45, 0.42), rgba(13, 24, 20, 0.94));
}

body.page-tickets .nw-public-chat-message.is-system {
    justify-content: center;
}

body.page-tickets .nw-public-chat-message.is-system > div {
    max-width: 90%;
    border-color: rgba(56, 189, 248, 0.26);
    background: rgba(56, 189, 248, 0.08);
    color: #cbd5e1;
    text-align: center;
}

body.page-tickets .nw-public-chat-message header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px;
}

body.page-tickets .nw-public-chat-message strong {
    color: #f8fafc;
    font-size: 0.8rem;
}

body.page-tickets .nw-public-chat-message header em {
    border: 1px solid rgba(56, 189, 248, 0.24);
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.10);
    color: #7dd3fc;
    font-size: 0.64rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0.03em;
    padding: 3px 6px;
    text-transform: uppercase;
}

body.page-tickets .nw-public-chat-message time {
    color: #7b9186;
    font-size: 0.72rem;
    white-space: nowrap;
}

body.page-tickets .nw-public-chat-message p {
    margin: 0;
    color: inherit;
    font-size: 0.88rem;
    line-height: 1.48;
}

body.page-tickets .nw-public-chat-message__attachments {
    display: grid;
    gap: 6px;
    margin-top: 10px;
}

body.page-tickets .nw-public-chat-message__attachments a,
body.page-tickets .nw-public-chat-message__attachments span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    padding: 5px 8px;
    border-radius: 999px;
    border: 1px solid rgba(34, 197, 94, 0.24);
    color: #86efac;
    background: rgba(5, 8, 13, 0.42);
    font-size: 0.76rem;
    text-decoration: none;
}

body.page-tickets .nw-public-chat__composer {
    display: grid;
    gap: 10px;
    padding: 14px;
    border-top: 1px solid rgba(38, 50, 65, 0.9);
    background: rgba(5, 8, 13, 0.82);
}

body.page-tickets .nw-public-chat__composer label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #86efac;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

body.page-tickets .nw-public-chat__composer textarea {
    width: 100%;
    resize: vertical;
    min-height: 86px;
    max-height: 180px;
    padding: 11px 12px;
    border: 1px solid #263241;
    border-radius: 14px;
    background: #080b10;
    color: #f8fafc;
    font: inherit;
    font-size: 0.9rem;
    line-height: 1.45;
    outline: none;
}

body.page-tickets .nw-public-chat__composer textarea:focus {
    border-color: rgba(34, 197, 94, 0.62);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.12);
}

body.page-tickets .nw-public-chat__composer footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

body.page-tickets .nw-public-chat__composer small {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #94a3b8;
    font-size: 0.76rem;
}

body.page-tickets .nw-public-chat__composer footer > div {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

body.page-tickets .nw-public-chat__attachments {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.page-tickets .nw-public-chat__attachments span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border: 1px solid rgba(38, 50, 65, 0.95);
    border-radius: 999px;
    background: rgba(17, 24, 39, 0.86);
    color: #cbd5e1;
    font-size: 0.76rem;
}

body.page-tickets .nw-public-chat__attachments button {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: rgba(239, 68, 68, 0.16);
    color: #fecaca;
    cursor: pointer;
}

body.page-tickets .nw-public-chat__attachments svg {
    width: 13px;
    height: 13px;
}

body.page-tickets .nw-public-chat__readonly {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px;
    border-top: 1px solid rgba(38, 50, 65, 0.9);
    color: #94a3b8;
    background: rgba(5, 8, 13, 0.82);
    font-size: 0.84rem;
}

body.page-tickets .nw-public-chat__readonly[hidden],
body.page-tickets .nw-public-chat__composer[hidden] {
    display: none;
}

body.page-tickets .nw-public-chat .desk-btn.is-loading {
    opacity: 0.7;
    cursor: wait;
}

@media (max-width: 720px) {
    body.page-tickets .nw-public-chat {
        right: 14px;
        bottom: 14px;
    }

    body.page-tickets .nw-public-chat__panel {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 84px;
        width: auto;
        height: min(78vh, 680px);
        min-height: 420px;
    }

    body.page-tickets .nw-public-chat__header {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    body.page-tickets .nw-public-chat__status {
        display: none;
    }

    body.page-tickets .nw-public-chat__composer footer {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-tickets .nw-public-chat__composer footer > div {
        justify-content: flex-end;
    }
}

/* Technical Desk Kanban MVP */
body.page-tickets .nw-kanban-panel {
    min-width: 0;
    overflow: hidden;
}

body.page-tickets .nw-kanban-title {
    align-items: flex-start;
    gap: 1rem;
}

body.page-tickets .nw-kanban-title__meta {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}

body.page-tickets .nw-kanban-board {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(300px, 340px);
    gap: 0.85rem;
    margin-top: 0.9rem;
    padding: 0 0 0.4rem;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    scrollbar-color: rgba(34, 197, 94, 0.45) rgba(15, 23, 42, 0.84);
}

body.page-tickets .nw-kanban-column {
    display: grid;
    grid-template-rows: auto minmax(360px, calc(100vh - 360px));
    min-width: 0;
    border: 1px solid rgba(38, 50, 65, 0.9);
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(13, 17, 23, 0.98), rgba(8, 11, 16, 0.98));
    scroll-snap-align: start;
    overflow: hidden;
    transition: border-color 140ms ease, box-shadow 140ms ease, background 140ms ease;
}

body.page-tickets .nw-kanban-column.is-drop-target {
    border-color: rgba(34, 197, 94, 0.62);
    box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.18) inset, 0 18px 40px rgba(16, 185, 129, 0.08);
}

body.page-tickets .nw-kanban-column.is-drop-blocked {
    border-color: rgba(239, 68, 68, 0.52);
}

body.page-tickets .nw-kanban-column > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.8rem;
    padding: 0.85rem 0.9rem;
    border-bottom: 1px solid rgba(38, 50, 65, 0.72);
    background: rgba(15, 23, 42, 0.42);
}

body.page-tickets .nw-kanban-column > header strong {
    display: block;
    color: #f8fafc;
    font-size: 0.92rem;
    font-weight: 800;
}

body.page-tickets .nw-kanban-column > header small {
    display: block;
    margin-top: 0.12rem;
    color: #94a3b8;
    font-size: 0.72rem;
    font-weight: 650;
}

body.page-tickets .nw-kanban-column > header > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    height: 1.55rem;
    padding: 0 0.55rem;
    border-radius: 999px;
    background: rgba(34, 197, 94, 0.12);
    color: #86efac;
    font-size: 0.78rem;
    font-weight: 850;
}

body.page-tickets .nw-kanban-column__body {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    min-height: 0;
    padding: 0.75rem;
    overflow-y: auto;
}

body.page-tickets .nw-kanban-card {
    display: grid;
    gap: 0.55rem;
    padding: 0.8rem;
    border: 1px solid rgba(38, 50, 65, 0.86);
    border-radius: 12px;
    background: rgba(5, 8, 13, 0.92);
    color: #f8fafc;
    text-decoration: none;
    cursor: grab;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
    transition: transform 140ms ease, border-color 140ms ease, background 140ms ease;
}

body.page-tickets .nw-kanban-card:hover,
body.page-tickets .nw-kanban-card:focus-visible,
body.page-tickets .nw-kanban-card.is-selected {
    border-color: rgba(34, 197, 94, 0.5);
    background: rgba(13, 17, 23, 0.98);
    outline: none;
}

body.page-tickets .nw-kanban-card.is-dragging {
    opacity: 0.58;
    transform: scale(0.985);
    cursor: grabbing;
}

body.page-tickets .nw-kanban-card.priority-critical {
    border-left: 3px solid #ef4444;
}

body.page-tickets .nw-kanban-card.sla-critical {
    box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.18) inset, 0 12px 28px rgba(0, 0, 0, 0.18);
}

body.page-tickets .nw-kanban-card.sla-warning {
    border-left: 3px solid #f59e0b;
}

body.page-tickets .nw-kanban-card__top,
body.page-tickets .nw-kanban-card footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
}

body.page-tickets .nw-kanban-card h3 {
    margin: 0;
    color: #f8fafc;
    font-size: 0.9rem;
    line-height: 1.25;
    font-weight: 820;
}

body.page-tickets .nw-kanban-card p {
    margin: 0;
    color: #a7b8b0;
    font-size: 0.74rem;
    line-height: 1.35;
}

body.page-tickets .nw-kanban-card__meta {
    display: grid;
    gap: 0.32rem;
}

body.page-tickets .nw-kanban-card__meta span {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 0.38rem;
    color: #cbd5e1;
    font-size: 0.73rem;
    font-weight: 680;
}

body.page-tickets .nw-kanban-card__meta em {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-style: normal;
}

body.page-tickets .nw-kanban-card__meta svg {
    width: 0.85rem;
    height: 0.85rem;
    color: #22c55e;
    flex: 0 0 auto;
}

body.page-tickets .nw-kanban-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.32rem;
}

body.page-tickets .nw-kanban-card footer {
    padding-top: 0.1rem;
    color: #7b9186;
    font-size: 0.7rem;
}

body.page-tickets .nw-kanban-card footer a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.7rem;
    height: 1.7rem;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 0.5rem;
    color: #cbd5e1;
}

body.page-tickets .nw-kanban-card footer svg {
    width: 0.9rem;
    height: 0.9rem;
}

body.page-tickets .nw-kanban-empty {
    min-height: 5.5rem;
    border: 1px dashed rgba(148, 163, 184, 0.18);
    background: rgba(15, 23, 42, 0.3);
}

body.page-tickets .desk-central-workspace.view-kanban {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 460px);
}

body.page-tickets .desk-central-workspace.view-kanban.is-preview-closed {
    grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 980px) {
    body.page-tickets .nw-kanban-board {
        grid-auto-columns: minmax(280px, 82vw);
    }

    body.page-tickets .desk-central-workspace.view-kanban {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* NightOwl Pulse - RMM operational dashboard */
body.page-pulse .content {
    max-width: none;
}

body.page-pulse .pulse-shell {
    display: grid;
    gap: 1rem;
    width: 100%;
}

body.page-pulse .pulse-header,
body.page-pulse .pulse-panel,
body.page-pulse .pulse-health-card,
body.page-pulse .pulse-drawer {
    border: 1px solid rgba(99, 102, 241, 0.22);
    background: linear-gradient(180deg, rgba(12, 12, 25, 0.98), rgba(7, 10, 20, 0.98));
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

body.page-pulse .pulse-header {
    display: grid;
    grid-template-columns: minmax(280px, 0.9fr) minmax(420px, 1.1fr);
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
}

body.page-pulse .pulse-header::before {
    content: "";
    position: absolute;
    inset: 0;
    border-top: 1px solid rgba(124, 58, 237, 0.68);
    background: radial-gradient(circle at 10% 0%, rgba(124, 58, 237, 0.18), transparent 34%);
    pointer-events: none;
}

body.page-pulse .pulse-header__identity,
body.page-pulse .pulse-header__ops,
body.page-pulse .pulse-header__actions,
body.page-pulse .pulse-panel__header,
body.page-pulse .pulse-action-item__top,
body.page-pulse .pulse-row-actions,
body.page-pulse .pulse-tabs,
body.page-pulse .pulse-drawer-actions {
    display: flex;
    align-items: center;
}

body.page-pulse .pulse-header__identity {
    gap: 0.8rem;
    min-width: 0;
    position: relative;
    z-index: 1;
}

body.page-pulse .pulse-header__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.65rem;
    height: 2.65rem;
    border-radius: 8px;
    background: rgba(124, 58, 237, 0.14);
    color: #c4b5fd;
    border: 1px solid rgba(124, 58, 237, 0.34);
}

body.page-pulse .pulse-header svg {
    width: 1rem;
    height: 1rem;
}

body.page-pulse .pulse-kicker {
    display: inline-flex;
    color: #a78bfa;
    font-size: 0.7rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.page-pulse .pulse-header h1 {
    margin: 0.15rem 0;
    color: #f8fafc;
    font-size: 1.65rem;
    line-height: 1.08;
    font-weight: 850;
}

body.page-pulse .pulse-header p,
body.page-pulse .pulse-panel__header p {
    margin: 0;
    color: #aeb9ca;
    font-size: 0.84rem;
}

body.page-pulse .pulse-header__ops {
    justify-content: flex-end;
    gap: 0.7rem;
    position: relative;
    z-index: 1;
}

body.page-pulse .pulse-search,
body.page-pulse .pulse-mini-search {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-width: 0;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background: rgba(4, 8, 17, 0.72);
    color: #94a3b8;
}

body.page-pulse .pulse-search {
    flex: 1 1 420px;
    max-width: 560px;
    height: 2.5rem;
    padding: 0 0.72rem;
    border-radius: 8px;
}

body.page-pulse .pulse-mini-search {
    height: 2.15rem;
    padding: 0 0.65rem;
    border-radius: 7px;
}

body.page-pulse .pulse-search:focus-within,
body.page-pulse .pulse-mini-search:focus-within {
    border-color: rgba(124, 58, 237, 0.68);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.12);
}

body.page-pulse .pulse-search input,
body.page-pulse .pulse-mini-search input,
body.page-pulse .pulse-table-tools select {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #f8fafc;
    font: inherit;
}

body.page-pulse .pulse-search kbd {
    flex: 0 0 auto;
    padding: 0.18rem 0.45rem;
    border-radius: 6px;
    background: rgba(124, 58, 237, 0.14);
    color: #c4b5fd;
    font-family: var(--font-mono);
    font-size: 0.68rem;
}

body.page-pulse .pulse-header__actions {
    gap: 0.45rem;
    flex: 0 0 auto;
}

body.page-pulse .pulse-btn,
body.page-pulse .pulse-icon-btn,
body.page-pulse .pulse-filter-row button,
body.page-pulse .pulse-tabs button,
body.page-pulse .pulse-action-item__actions a,
body.page-pulse .pulse-action-item__actions button,
body.page-pulse .pulse-drawer-actions a,
body.page-pulse .pulse-drawer-actions button,
body.page-pulse .pulse-placeholder a,
body.page-pulse .pulse-placeholder button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.42rem;
    border: 1px solid rgba(148, 163, 184, 0.2);
    background: rgba(15, 23, 42, 0.62);
    color: #dbeafe;
    border-radius: 7px;
    font-size: 0.78rem;
    font-weight: 760;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 140ms ease, background 140ms ease, transform 140ms ease, color 140ms ease;
}

body.page-pulse .pulse-btn {
    height: 2.25rem;
    padding: 0 0.75rem;
}

body.page-pulse .pulse-icon-btn {
    width: 2.25rem;
    height: 2.25rem;
}

body.page-pulse .pulse-btn:hover,
body.page-pulse .pulse-icon-btn:hover,
body.page-pulse .pulse-filter-row button:hover,
body.page-pulse .pulse-tabs button:hover,
body.page-pulse .pulse-action-item__actions a:hover,
body.page-pulse .pulse-action-item__actions button:hover,
body.page-pulse .pulse-drawer-actions a:hover,
body.page-pulse .pulse-drawer-actions button:hover {
    border-color: rgba(167, 139, 250, 0.5);
    background: rgba(88, 28, 135, 0.24);
    color: #ffffff;
}

body.page-pulse .pulse-btn-primary,
body.page-pulse .pulse-btn-primary.is-active {
    border-color: rgba(34, 197, 94, 0.5);
    background: rgba(34, 197, 94, 0.16);
    color: #bbf7d0;
}

body.page-pulse .pulse-health {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.72rem;
}

body.page-pulse .pulse-health-card {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
    padding: 0.78rem;
    border-radius: 8px;
    text-align: left;
    color: #f8fafc;
    cursor: pointer;
    transition: border-color 140ms ease, transform 140ms ease, background 140ms ease;
}

body.page-pulse .pulse-health-card:hover,
body.page-pulse .pulse-health-card.is-active {
    border-color: rgba(167, 139, 250, 0.58);
    transform: translateY(-1px);
    background: linear-gradient(180deg, rgba(25, 19, 44, 0.98), rgba(8, 12, 24, 0.98));
}

body.page-pulse .pulse-health-card span {
    display: flex;
    align-items: center;
    gap: 0.42rem;
    color: #cbd5e1;
    font-size: 0.74rem;
    font-weight: 760;
}

body.page-pulse .pulse-health-card strong {
    color: #ffffff;
    font-size: 1.55rem;
    line-height: 1;
    font-weight: 850;
}

body.page-pulse .pulse-health-card small {
    color: #8796ab;
    font-size: 0.72rem;
}

body.page-pulse .pulse-health-card.status-ok strong,
body.page-pulse .health-ok,
body.page-pulse .event-success {
    color: #22c55e;
}

body.page-pulse .pulse-health-card.status-offline strong,
body.page-pulse .status-offline,
body.page-pulse .status-critical strong,
body.page-pulse .event-critical {
    color: #ef4444;
}

body.page-pulse .pulse-health-card.status-warning strong,
body.page-pulse .event-warning {
    color: #f59e0b;
}

body.page-pulse .pulse-health-card.status-unknown strong {
    color: #38bdf8;
}

body.page-pulse .pulse-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
    gap: 1rem;
    align-items: start;
}

body.page-pulse .pulse-main {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

body.page-pulse .pulse-side {
    position: sticky;
    top: 1rem;
    min-width: 0;
}

body.page-pulse .pulse-panel {
    border-radius: 8px;
    overflow: hidden;
}

body.page-pulse .pulse-panel__header {
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

body.page-pulse .pulse-panel__header.compact {
    padding-bottom: 0.75rem;
}

body.page-pulse .pulse-panel__header h2 {
    display: flex;
    align-items: center;
    gap: 0.42rem;
    margin: 0 0 0.15rem;
    color: #f8fafc;
    font-size: 1rem;
    font-weight: 850;
}

body.page-pulse .pulse-panel-link {
    color: #c4b5fd;
    font-size: 0.78rem;
    font-weight: 760;
    text-decoration: none;
}

body.page-pulse .pulse-action-list {
    display: grid;
    gap: 0.62rem;
    padding: 0.8rem;
}

body.page-pulse .pulse-action-item {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr) auto;
    gap: 0.72rem;
    align-items: center;
    padding: 0.72rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-left: 3px solid rgba(124, 58, 237, 0.55);
    border-radius: 8px;
    background: rgba(3, 7, 18, 0.55);
}

body.page-pulse .pulse-action-item.severity-critical {
    border-left-color: #ef4444;
}

body.page-pulse .pulse-action-item.severity-warning {
    border-left-color: #f59e0b;
}

body.page-pulse .pulse-action-item.severity-security {
    border-left-color: #a78bfa;
}

body.page-pulse .pulse-action-item__rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 7px;
    background: rgba(124, 58, 237, 0.15);
    color: #ddd6fe;
    font-weight: 850;
}

body.page-pulse .pulse-action-item__top {
    gap: 0.45rem;
    min-width: 0;
}

body.page-pulse .pulse-action-item h3 {
    margin: 0.26rem 0 0.15rem;
    color: #f8fafc;
    font-size: 0.92rem;
    line-height: 1.25;
    font-weight: 820;
}

body.page-pulse .pulse-action-item p {
    margin: 0;
    color: #aeb9ca;
    font-size: 0.78rem;
}

body.page-pulse .pulse-action-item small {
    color: #8796ab;
    font-size: 0.72rem;
}

body.page-pulse .pulse-action-item__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.4rem;
    max-width: 24rem;
}

body.page-pulse .pulse-action-item__actions a,
body.page-pulse .pulse-action-item__actions button {
    min-height: 1.9rem;
    padding: 0 0.55rem;
}

body.page-pulse .pulse-table-tools {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

body.page-pulse .pulse-table-tools select {
    width: auto;
    height: 2.15rem;
    padding: 0 1.9rem 0 0.7rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 7px;
    background: #0b1120;
}

body.page-pulse .pulse-filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

body.page-pulse .pulse-filter-row button {
    height: 1.9rem;
    padding: 0 0.62rem;
}

body.page-pulse .pulse-filter-row button.is-active,
body.page-pulse .pulse-tabs button.is-active {
    border-color: rgba(34, 197, 94, 0.48);
    background: rgba(34, 197, 94, 0.12);
    color: #bbf7d0;
}

body.page-pulse .pulse-table-wrap {
    overflow-x: auto;
}

body.page-pulse .pulse-endpoint-table {
    width: 100%;
    min-width: 1080px;
    border-collapse: separate;
    border-spacing: 0;
}

body.page-pulse .pulse-endpoint-table th,
body.page-pulse .pulse-endpoint-table td {
    padding: 0.72rem 0.82rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.11);
    vertical-align: middle;
}

body.page-pulse .pulse-endpoint-table th {
    color: #93a4bc;
    font-size: 0.69rem;
    font-weight: 850;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: rgba(15, 23, 42, 0.42);
}

body.page-pulse .pulse-endpoint-table tr[data-endpoint-row] {
    cursor: pointer;
    transition: background 130ms ease, box-shadow 130ms ease;
}

body.page-pulse .pulse-endpoint-table tr[data-endpoint-row]:hover,
body.page-pulse .pulse-endpoint-table tr[data-endpoint-row].is-selected {
    background: rgba(88, 28, 135, 0.13);
    box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.62);
}

body.page-pulse .pulse-row-main {
    display: grid;
    gap: 0.18rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

body.page-pulse .pulse-row-main strong,
body.page-pulse .pulse-cell-user {
    color: #f8fafc;
    font-size: 0.86rem;
    font-weight: 800;
}

body.page-pulse .pulse-row-main small,
body.page-pulse .pulse-endpoint-table td small,
body.page-pulse .pulse-muted {
    display: block;
    margin-top: 0.15rem;
    color: #8ea0b8;
    font-size: 0.73rem;
}

body.page-pulse .pulse-status-dot {
    display: inline-block;
    width: 0.55rem;
    height: 0.55rem;
    margin-right: 0.42rem;
    border-radius: 999px;
    background: #64748b;
    box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.12);
}

body.page-pulse .pulse-status-dot.status-online {
    background: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.16);
}

body.page-pulse .pulse-status-dot.status-offline {
    background: #ef4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.16);
}

body.page-pulse .pulse-status-text {
    color: #dbeafe;
    font-size: 0.78rem;
    font-weight: 800;
}

body.page-pulse .pulse-badge,
body.page-pulse .pulse-health-pill,
body.page-pulse .pulse-alert-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.35rem;
    padding: 0 0.48rem;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background: rgba(15, 23, 42, 0.64);
    color: #dbeafe;
    font-size: 0.7rem;
    font-weight: 850;
}

body.page-pulse .pulse-health-pill.health-ok,
body.page-pulse .pulse-badge.resource-ok {
    border-color: rgba(34, 197, 94, 0.28);
    color: #86efac;
}

body.page-pulse .pulse-health-pill.health-warning,
body.page-pulse .pulse-badge.resource-warning,
body.page-pulse .pulse-badge.stale,
body.page-pulse .pulse-badge.severity-warning {
    border-color: rgba(245, 158, 11, 0.32);
    color: #fbbf24;
}

body.page-pulse .pulse-health-pill.health-critical,
body.page-pulse .pulse-badge.resource-critical,
body.page-pulse .pulse-badge.critical,
body.page-pulse .pulse-badge.severity-critical {
    border-color: rgba(239, 68, 68, 0.34);
    color: #fca5a5;
}

body.page-pulse .pulse-badge.security,
body.page-pulse .pulse-badge.severity-security {
    border-color: rgba(167, 139, 250, 0.35);
    color: #c4b5fd;
}

body.page-pulse .pulse-row-actions {
    gap: 0.32rem;
}

body.page-pulse .pulse-row-actions a,
body.page-pulse .pulse-row-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 7px;
    background: rgba(15, 23, 42, 0.52);
    color: #cbd5e1;
}

body.page-pulse .pulse-row-actions a:hover,
body.page-pulse .pulse-row-actions button:hover {
    border-color: rgba(167, 139, 250, 0.46);
    color: #ffffff;
}

body.page-pulse .pulse-tabs {
    gap: 0.35rem;
    padding: 0 1rem 0.75rem;
}

body.page-pulse .pulse-tabs button {
    flex: 1;
    height: 1.95rem;
    padding: 0 0.48rem;
}

body.page-pulse .pulse-tab-panel {
    padding: 0 1rem 1rem;
}

body.page-pulse .pulse-side-alert {
    display: grid;
    gap: 0.28rem;
    padding: 0.72rem;
    border: 1px solid rgba(148, 163, 184, 0.13);
    border-left: 3px solid rgba(124, 58, 237, 0.55);
    border-radius: 8px;
    background: rgba(3, 7, 18, 0.5);
    color: #f8fafc;
    text-decoration: none;
}

body.page-pulse .pulse-side-alert + .pulse-side-alert {
    margin-top: 0.55rem;
}

body.page-pulse .pulse-side-alert.severity-critical {
    border-left-color: #ef4444;
}

body.page-pulse .pulse-side-alert.severity-warning {
    border-left-color: #f59e0b;
}

body.page-pulse .pulse-side-alert span {
    color: #c4b5fd;
    font-size: 0.68rem;
    font-weight: 850;
    text-transform: uppercase;
}

body.page-pulse .pulse-side-alert strong {
    font-size: 0.83rem;
}

body.page-pulse .pulse-side-alert small {
    color: #8ea0b8;
    font-size: 0.72rem;
}

body.page-pulse .pulse-timeline {
    display: grid;
    gap: 0.65rem;
}

body.page-pulse .pulse-timeline article {
    display: grid;
    grid-template-columns: 0.7rem minmax(0, 1fr);
    gap: 0.55rem;
}

body.page-pulse .pulse-timeline article > span {
    width: 0.55rem;
    height: 0.55rem;
    margin-top: 0.28rem;
    border-radius: 999px;
    background: #818cf8;
}

body.page-pulse .pulse-timeline strong {
    color: #f8fafc;
    font-size: 0.82rem;
}

body.page-pulse .pulse-timeline small,
body.page-pulse .pulse-timeline p,
body.page-pulse .pulse-placeholder p {
    margin: 0.18rem 0 0;
    color: #94a3b8;
    font-size: 0.74rem;
    line-height: 1.45;
}

body.page-pulse .pulse-placeholder,
body.page-pulse .pulse-empty {
    display: grid;
    place-items: center;
    gap: 0.45rem;
    padding: 1.5rem;
    border: 1px dashed rgba(148, 163, 184, 0.18);
    border-radius: 8px;
    background: rgba(3, 7, 18, 0.34);
    color: #cbd5e1;
    text-align: center;
}

body.page-pulse .pulse-empty.compact {
    padding: 1rem;
}

body.page-pulse .pulse-placeholder svg,
body.page-pulse .pulse-empty svg {
    color: #a78bfa;
}

body.page-pulse .pulse-placeholder strong,
body.page-pulse .pulse-empty strong {
    color: #f8fafc;
    font-size: 0.88rem;
}

body.page-pulse .pulse-placeholder a,
body.page-pulse .pulse-placeholder button {
    min-height: 2rem;
    padding: 0 0.7rem;
    margin-top: 0.25rem;
}

body.page-pulse .pulse-drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(0, 0, 0, 0.45);
}

body.page-pulse .pulse-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 90;
    width: min(440px, calc(100vw - 24px));
    border-radius: 0;
    transform: translateX(104%);
    transition: transform 180ms ease;
}

body.page-pulse .pulse-drawer.is-open {
    transform: translateX(0);
}

body.page-pulse .pulse-drawer header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

body.page-pulse .pulse-drawer h2 {
    margin: 0.18rem 0 0.1rem;
    color: #f8fafc;
    font-size: 1.18rem;
}

body.page-pulse .pulse-drawer p {
    margin: 0;
    color: #aeb9ca;
    font-size: 0.8rem;
    line-height: 1.45;
}

body.page-pulse .pulse-drawer header button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 7px;
    background: rgba(15, 23, 42, 0.58);
    color: #cbd5e1;
}

body.page-pulse .pulse-drawer__body {
    display: grid;
    gap: 0.8rem;
    padding: 1rem;
    overflow-y: auto;
    max-height: calc(100vh - 5rem);
}

body.page-pulse .pulse-drawer-summary,
body.page-pulse .pulse-drawer section {
    padding: 0.82rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 8px;
    background: rgba(3, 7, 18, 0.46);
}

body.page-pulse .pulse-drawer-summary strong {
    color: #f8fafc;
}

body.page-pulse .pulse-drawer-summary small {
    display: block;
    margin-top: 0.2rem;
    color: #94a3b8;
}

body.page-pulse .pulse-drawer h3 {
    margin: 0 0 0.55rem;
    color: #f8fafc;
    font-size: 0.86rem;
}

body.page-pulse .pulse-health-meter {
    height: 0.55rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(30, 41, 59, 0.9);
}

body.page-pulse .pulse-health-meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #7c3aed, #22c55e);
}

body.page-pulse .pulse-resource-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
}

body.page-pulse .pulse-resource-grid span {
    display: grid;
    gap: 0.2rem;
    padding: 0.55rem;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 7px;
    color: #94a3b8;
    font-size: 0.72rem;
}

body.page-pulse .pulse-resource-grid strong {
    color: #f8fafc;
    font-size: 1rem;
}

body.page-pulse .pulse-drawer-actions {
    flex-wrap: wrap;
    gap: 0.45rem;
}

body.page-pulse .pulse-drawer-actions a,
body.page-pulse .pulse-drawer-actions button {
    min-height: 2.1rem;
    padding: 0 0.65rem;
}

body.page-pulse .is-noc-mode .pulse-header__actions .pulse-icon-btn,
body.page-pulse .is-noc-mode .pulse-table-tools {
    opacity: 0.45;
}

body.page-pulse .is-noc-mode .pulse-health-card.status-critical,
body.page-pulse .is-noc-mode .pulse-action-item.severity-critical {
    animation: pulseCritical 1.9s ease-in-out infinite;
}

@keyframes pulseCritical {
    0%, 100% {
        box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), 0 0 0 rgba(239, 68, 68, 0);
    }
    50% {
        box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), 0 0 0 4px rgba(239, 68, 68, 0.1);
    }
}

@media (max-width: 1280px) {
    body.page-pulse .pulse-header,
    body.page-pulse .pulse-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    body.page-pulse .pulse-side {
        position: static;
    }

    body.page-pulse .pulse-health {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    body.page-pulse .pulse-header__ops,
    body.page-pulse .pulse-header__actions,
    body.page-pulse .pulse-panel__header,
    body.page-pulse .pulse-table-tools,
    body.page-pulse .pulse-action-item {
        align-items: stretch;
        flex-direction: column;
    }

    body.page-pulse .pulse-action-item {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

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

    body.page-pulse .pulse-search {
        max-width: none;
        flex-basis: auto;
    }
}

@media (max-width: 520px) {
    body.page-pulse .pulse-health {
        grid-template-columns: minmax(0, 1fr);
    }
}
