﻿:root {
    --paac-font-family-base: 'Raleway', sans-serif;

    --paac-blue: #134f99;
    --paac-teal: #007b93;
    --paac-orange: #dc6d2c;
    --paac-lime: #b5c841;
    --paac-maroon: #9f291f;
    --paac-purple: #5e2c68;
    --paac-ink: #17324d;
    --paac-sand: #f6f1e6;
    --paac-gold: #ffd07d;
    --paac-blue-deep: #123a72;
    --paac-teal-deep: #066373;
    --paac-white: #ffffff;

    --paac-text-body: #626262;
    --paac-text-strong: #16324f;
    --paac-text-muted: #6b7887;
    /* Shared surfaces and borders */
    --paac-surface-subtle: #f8fafc;
    --paac-surface-subtle-alt: #eef4fb;
    --paac-border-soft: #e8edf2;
    --paac-border-medium: #dfe8f1;
    --paac-border-strong: #c2d2e0;
    --paac-shadow-soft: 0 12px 28px rgba(18, 38, 63, 0.06);
    --paac-shadow-medium: 0 14px 30px rgba(18, 38, 63, 0.08);

    /* Shared semantic tones.
       Build new UI from these before adding component-specific color vars. */
    --paac-tone-neutral-bg: #eef1f4;
    --paac-tone-neutral-border: #c8d0d8;
    --paac-tone-neutral-text: #58636d;
    --paac-tone-neutral-accent: #8a939d;

    --paac-tone-info-bg: #eef6ff;
    --paac-tone-info-border: #9ec5ef;
    --paac-tone-info-text: #2f6fa5;
    --paac-tone-info-accent: #1f6fb2;
    --paac-tone-info-ring: inset 0 0 0 1px rgba(47, 111, 165, 0.14);

    --paac-tone-warning-bg: #fff2e3;
    --paac-tone-warning-border: #f2c48d;
    --paac-tone-warning-text: #a95f12;
    --paac-tone-warning-ring: inset 0 0 0 1px rgba(220, 109, 44, 0.18);

    --paac-tone-success-bg: #eaf8ef;
    --paac-tone-success-border: #8fd0a3;
    --paac-tone-success-text: #2d7a44;
    --paac-tone-success-ring: inset 0 0 0 1px rgba(45, 122, 68, 0.16);

    --paac-tone-danger-bg: rgba(187, 42, 26, 0.2);
    --paac-tone-danger-border: #e7a29f;
    --paac-tone-danger-text: #b44943;
    --paac-tone-danger-accent: #c6453d;
    --paac-tone-danger-ring: inset 0 0 0 1px rgba(198, 69, 61, 0.18);

    --paac-primary-hover: #005564;
    --paac-primary-disabled: #6c6c6c;
    
    --paac-border-subtle: #e3e6f0;
    --paac-surface-soft: #f7fafc;

    /* Shared chat surfaces. All in-app AI conversations use these tokens. */
    --paac-chat-surface: #f4f7fb;
    --paac-chat-user-bg: #e4efff;
    --paac-chat-user-border: #afc9eb;
    --paac-chat-user-text: #123f76;
    --paac-chat-assistant-bg: #ffffff;
    --paac-chat-assistant-border: #d8e2ed;
    --paac-chat-assistant-text: #243746;

    --paac-app-shell-bg: rgb(6 99 115 / 8%);
    --paac-app-divider: rgb(6 98 115 / 37%);
    --paac-sidebar-icon: hsl(0deg 0% 100% / 70%);
    --paac-app-bg: linear-gradient(180deg, var(--paac-surface-soft) 0%, var(--paac-surface-soft) 100%);
    --paac-app-bg-overlay: radial-gradient(circle at top left, rgba(0, 98, 116, 0.08), transparent 26%);

    --paac-dropdown-border: rgb(6 98 115 / 37%);
    --paac-dropdown-hover-bg: rgba(0, 98, 116, 0.08);

    --paac-card-border: rgba(6, 98, 115, 0.16);
    --paac-card-header-bg: rgba(6, 99, 115, 0.12);
    --paac-card-header-border: rgba(6, 98, 115, 0.12);

    --paac-form-border: rgb(6 98 115 / 37%);
    --paac-form-focus-ring: 0 0 0 0.18rem rgba(0, 98, 116, 0.12);

    --paac-sidebar-bg-start: #0b6d80;
    --paac-sidebar-bg-end: #0a5b6b;
    --paac-sidebar-shadow: 14px 0 30px rgba(6, 48, 63, 0.12);
    --paac-sidebar-panel-bg: rgb(8, 48, 67);
    --paac-sidebar-panel-border: rgba(255,255,255,0.1);
    --paac-sidebar-panel-shadow: 0 14px 30px rgba(3, 16, 24, 0.26);
    --paac-sidebar-link-bg: rgba(255,255,255,0.03);
    --paac-sidebar-link-bg-hover: rgba(255,255,255,0.12);
    --paac-sidebar-link-bg-active: rgba(255,255,255,0.18);
    --paac-sidebar-link-border: rgba(255,255,255,0.06);
    --paac-sidebar-link-border-active: rgba(255,255,255,0.18);
    --paac-sidebar-sub-link-text: rgba(255,255,255,0.72);
    --paac-sidebar-sub-link-border: rgba(255,255,255,0.12);

    --paac-topbar-hover-bg: rgba(0, 98, 116, 0.08);
    --paac-avatar-ring: 0 0 0 3px rgba(0, 98, 116, 0.08);

    --paac-shell-bg-start: #f4f7fb;
    --paac-shell-bg-end: #eef3f8;
    --paac-panel-bg: rgba(255,255,255,0.82);
    --paac-panel-border: rgba(22, 50, 79, 0.08);
    --paac-panel-shadow-strong: 0 14px 30px rgba(18, 38, 63, 0.08);

    --paac-hero-radial-lime: rgba(181, 200, 65, 0.22);
    --paac-hero-radial-orange: rgba(220, 109, 44, 0.22);
    --paac-hero-shadow: 0 18px 40px rgba(19, 79, 153, 0.18);
    --paac-hero-border: rgba(19, 79, 153, 0.18);
    --paac-hero-text-soft: rgba(242, 247, 251, 0.9);
    --paac-hero-label: rgba(242, 247, 251, 0.72);
    --paac-hero-glass-bg: rgba(255,255,255,0.12);
    --paac-hero-glass-bg-strong: rgba(255,255,255,0.2);
    --paac-hero-glass-border: rgba(255,255,255,0.16);
    --paac-hero-glass-border-strong: rgba(255,255,255,0.45);
    --paac-hero-glass-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
    --paac-hero-intro-bg-start: rgba(255,255,255,0.14);
    --paac-hero-intro-bg-end: rgba(255,255,255,0.08);
    --paac-hero-intro-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    --paac-hero-subpanel-bg: rgba(9, 24, 46, 0.16);
    --paac-hero-button-border: rgba(255,255,255,0.28);
    --paac-hero-button-border-hover: rgba(255,255,255,0.45);

    --paac-summary-bg-start: rgba(19, 79, 153, 0.08);
    --paac-summary-bg-end: rgba(0, 123, 147, 0.06);
    --paac-summary-border: rgba(19, 79, 153, 0.1);

    --paac-button-shadow: none;

    --paac-form-shadow-inset: inset 0 1px 2px rgba(18, 38, 63, 0.03);
    --paac-table-shell-bg: rgba(255,255,255,0.78);
    --paac-table-shell-sheen: inset 0 1px 0 rgba(255,255,255,0.45);
    --paac-table-head-bg: rgba(6, 99, 115, 0.08);
    --paac-table-row-border: rgba(6, 98, 115, 0.09);
    --paac-table-foot-bg: rgba(6, 99, 115, 0.04);
    --paac-table-row-hover: rgba(6, 99, 115, 0.05);

    --paac-modal-shadow: 0 18px 48px rgba(12, 35, 51, 0.16);
    --paac-modal-close-ring: 0 0 0 .18rem rgba(19, 79, 153, .12);
    --paac-footer-bg: rgba(255,255,255,0.72);

    --paac-dev-card-bg-start: rgba(255,255,255,0.95);
    --paac-dev-card-bg-end: rgba(235,244,246,0.88);
    --paac-dev-card-border-hover: rgba(6, 98, 115, 0.24);
    --paac-dev-card-shadow-hover: 0 16px 30px rgba(12, 35, 51, 0.08);
    --paac-chip-bg: rgba(6, 99, 115, 0.08);
    --paac-chip-muted-bg: rgba(99, 115, 129, 0.12);
    --paac-hr: rgba(22, 50, 79, 0.24);
}

body {
    color: var(--paac-text-body);
    font-family: var(--paac-font-family-base);
    page-break-before: avoid;
}

#wrapper #content-wrapper {
    background-color: var(--paac-app-shell-bg);
    width: 100%;
    overflow-x: hidden;
}

#content .container-fluid:first-of-type {
    padding-left: 0.8rem;
    padding-right: 0.8rem;
}

.sidebar-dark .nav-item .nav-link i {
    color: var(--paac-sidebar-icon);
}

.topbar {
    height: 3.75rem;
    border-bottom: 1px solid var(--paac-app-divider);
}

.topbar .topbar-divider {
    width: 0;
    border-right: 1px solid var(--paac-app-divider);
    height: 2.375rem;
    margin: auto 1rem;
}

.shadow {
    box-shadow: none!important;
}

.border {
    border: 1px solid var(--paac-app-divider)!important;
}

a {
    color: var(--paac-teal-deep);
}

a:hover {
    color: var(--paac-teal);
}

a:not([href]),
a:not([href]):hover {
    color: var(--paac-teal-deep);
    text-decoration: underline dotted var(--paac-teal-deep) 1px;
}

.bg-gradient-primary {
    background-color: var(--paac-teal-deep);
    background-image: none;
    background-size: cover;
}

.text-gray-400 {
    color: var(--paac-text-muted)!important;
}

.login-bg {
    background-image: var(--app-login-background);
    background-size: cover;
}

.ql-toolbar.ql-snow {
    border: none;
    border-top: 2px solid var(--paac-border-subtle);
    border-radius: 4px 4px 0 0;
    background-color: var(--paac-border-subtle);
    text-align: initial;
}

.ql-container.ql-snow {
    border: 2px solid var(--paac-border-subtle)!important;
    border-top: none!important;
    border-radius: 0 0 4px 4px;
}

form.user .form-control-user {
    font-size: .8rem;
    border-radius: 10rem;
    padding: 0px 22px;
    min-height: 50px;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: .85rem;
    color: var(--paac-text-muted);
    text-align: left;
    list-style: none;
    background-color: var(--paac-white);
    background-clip: padding-box;
    border: 1px solid var(--paac-dropdown-border);
    border-radius: .35rem;
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--paac-white);
    text-decoration: none;
    background-color: var(--paac-teal-deep);
}

.dropdown-divider {
    height: 0;
    margin: .5rem 0;
    overflow: hidden;
    border-top: 1px solid var(--paac-dropdown-border);
}

.btn-primary {
    color: var(--paac-white);
    background-color: var(--paac-teal-deep);
    border-color: var(--paac-teal-deep);
}

.btn-primary.focus,
.btn-primary:focus,
.btn-primary:hover {
    color: var(--paac-white);
    background-color: var(--paac-primary-hover);
    border-color: var(--paac-primary-hover);
}

.btn-outline-primary {
    color: var(--paac-teal-deep);
    background-color: transparent;
    border-color: var(--paac-teal-deep);
}

.btn-outline-primary.focus,
.btn-outline-primary:focus,
.btn-outline-primary:hover {
    color: var(--paac-white);
    background-color: var(--paac-teal-deep);
    border-color: var(--paac-teal-deep);
}

.btn-inline {
    position: absolute;
    right: 6px;
    top: 1px;
    padding: 3px 10px 1px 10px;
}

.btn-primary.disabled,
.btn-primary:disabled {
    color: var(--paac-white);
    background-color: var(--paac-primary-disabled);
    border-color: var(--paac-primary-disabled);
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    color: var(--paac-white);
    background-color: var(--paac-teal-deep);
    border-color: var(--paac-teal-deep);
}

.page-item.active .page-link {
    background-color: var(--paac-teal-deep);
    border-color: var(--paac-teal-deep);
}

.page-link,
.page-link:hover {
    color: var(--paac-teal-deep);
}

a.page-link.disabled {
    display: block;
    cursor: not-allowed;
}

.text-primary {
    color: var(--paac-teal-deep)!important;
}

.form-row {
    text-align: initial;
}

footer.sticky-footer {
    padding: 1rem 0;
    flex-shrink: 0;
    border-top: 1px solid var(--paac-app-divider);
}

.disabled {
    display: none;
}

.fa.fa-check {
    color: var(--paac-lime);
}

.fa.fa-exclamation {
    color: var(--paac-tone-danger-accent);
}

#form-message-group {
    padding-top: 8px;
}

.required {
    padding: 0 2px;
    color: var(--paac-tone-danger-accent);
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: var(--paac-white);
    background-clip: border-box;
    border: 1px solid var(--paac-card-border);
    border-radius: .35rem;
}

.card-header {
    padding: .75rem 1.25rem;
    margin-bottom: 0;
    background-color: var(--paac-card-header-bg);
    border-bottom: 1px solid var(--paac-card-header-border);
}

.card-img-top.w-100.d-block {
    height: 235px;
    width: 100%;
    object-fit: cover;
    border-top-right-radius: 4px!important;
    border-top-left-radius: 4px!important;
    margin-top: -0.5px;
}

.img-fluid.card-img-top.w-100.d-block {
    height: 330px;
}

.scorecard-empty-shell,
.scorecard-shell {
    border-radius: 24px;
    padding: 0px;
}

.scorecard-empty-hero,
.scorecard-hero {
    background:
        radial-gradient(circle at top right, var(--paac-hero-radial-lime), transparent 28%),
        radial-gradient(circle at 82% 18%, var(--paac-hero-radial-orange), transparent 20%),
        linear-gradient(135deg, var(--paac-blue-deep) 0%, var(--paac-blue) 38%, var(--paac-teal-deep) 100%);
    border-radius: 24px;
    box-shadow: var(--paac-hero-shadow);
    color: var(--paac-white);
}

.scorecard-empty-hero {
    padding: 32px;
}

.scorecard-hero {
    border: 1px solid var(--paac-hero-border);
    overflow: hidden;
    position: relative;
}

.scorecard-hero .card-body {
    position: relative;
}

.scorecard-hero::after {
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.scorecard-hero .card-body::after {
    background: linear-gradient(120deg, var(--paac-hero-glass-bg), transparent 42%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.scorecard-empty-toolbar,
.scorecard-toolbar {
    background: var(--paac-white);
    border: 1px solid var(--paac-panel-border);
    border-radius: 20px;
    box-shadow: var(--paac-panel-shadow-strong);
    padding: 18px;
    position: relative;
    z-index: 2;
}

.scorecard-empty-toolbar {
    margin-top: -22px;
}

.scorecard-toolbar {
    margin-top: -26px;
}

.scorecard-empty-toolbar .btn,
.scorecard-empty-toolbar .form-control,
.scorecard-pill-group .btn,
.scorecard-toolbar .btn,
.scorecard-toolbar .form-control {
    border-radius: 999px;
}

.scorecard-pill-group .btn,
.scorecard-toolbar .btn {
    padding-left: 14px;
    padding-right: 14px;
}

.scorecard-toolbar label {
    color: var(--paac-text-muted);
    font-size: 0.85rem;
    font-weight: 600;
}

.scorecard-toolbar .form-control {
    min-width: 220px;
}

.scorecard-empty-panel,
.scorecard-section {
    background: var(--paac-panel-bg);
    border: 1px solid var(--paac-panel-border);
    border-radius: 22px;
    box-shadow: var(--paac-panel-shadow-strong);
    margin-top: 24px;
}

.scorecard-empty-panel {
    padding: 32px 24px;
}

.scorecard-section {
    padding: 24px;
}

.scorecard-kpi {
    background: var(--paac-hero-glass-bg);
    backdrop-filter: blur(6px);
    border: 1px solid var(--paac-hero-glass-border);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-start;
    min-height: 148px;
    padding: 1rem 0.95rem;
    box-shadow: var(--paac-hero-glass-shadow);
}

.workflow-kpi-grid {
    display: grid;
    gap: 0.9rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.workflow-customer-note-task-panel {
    background: var(--paac-white);
    border: 1px solid var(--paac-panel-border);
    border-radius: 12px;
    box-shadow: var(--paac-shadow-soft);
    padding: 1rem;
}

.workflow-customer-note-task-head {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: .9rem;
}

.workflow-customer-note-task-count {
    align-items: center;
    background: var(--paac-tone-info-bg);
    border: 1px solid var(--paac-tone-info-border);
    border-radius: 999px;
    color: var(--paac-tone-info-accent);
    display: inline-flex;
    font-size: .86rem;
    font-weight: 800;
    justify-content: center;
    min-width: 2.4rem;
    padding: .32rem .72rem;
}

.workflow-customer-note-task-list {
    display: grid;
    gap: .7rem;
    max-height: 420px;
    overflow-y: auto;
    padding-right: .15rem;
}

.workflow-customer-note-task-item {
    background: var(--paac-surface-subtle);
    border: 1px solid var(--paac-border-medium);
    border-radius: 10px;
    padding: .85rem .95rem;
}

.workflow-customer-note-task-title-row {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: .85rem;
    justify-content: space-between;
}

.workflow-customer-note-task-title {
    color: var(--paac-text-strong);
    font-weight: 800;
    line-height: 1.35;
}

a.workflow-customer-note-task-title:hover,
a.workflow-customer-note-task-title:focus {
    color: var(--paac-teal);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.workflow-customer-note-task-meta {
    color: var(--paac-text-muted);
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .65rem;
}

.workflow-customer-note-task-meta span {
    background: var(--paac-white);
    border: 1px solid var(--paac-border-soft);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 700;
    padding: .3rem .55rem;
}

.scorecard-kpi-label {
    color: var(--paac-hero-label);
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.scorecard-hero-eyebrow {
    color: var(--paac-gold);
    letter-spacing: .12em;
}

.scorecard-hero-copy,
.scorecard-hero-copy-wide,
.scorecard-hero .workflow-cache-stamp {
    color: var(--paac-hero-text-soft);
}

.scorecard-hero-copy-wide {
    max-width: 540px;
}

.scorecard-kpi-value {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.1;
    margin: 0;
}

.scorecard-kpi-meta {
    color: var(--paac-hero-text-soft);
    font-size: .85rem;
    margin-top: 4px;
}

.scorecard-kpi-panel {
    background: var(--paac-white);
    border: 1px solid var(--paac-panel-border);
    color: var(--paac-text-strong);
}

.scorecard-kpi-panel .scorecard-kpi-label {
    color: var(--paac-text-muted);
}

.scorecard-kpi-panel .scorecard-kpi-value {
    color: var(--paac-text-strong);
}

.scorecard-department {
    border-top: 1px solid var(--paac-border-strong);
    margin-top: 32px;
    padding-top: 28px;
}

.scorecard-department:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

.scorecard-department-title {
    color: var(--paac-text-strong);
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    margin-bottom: 4px;
}

.scorecard-department-subtitle {
    color: var(--paac-text-muted);
    font-size: 0.92rem;
    margin-bottom: 24px;
}

.scorecard-metric-card {
    background: var(--paac-white);
    border: 1px solid var(--paac-panel-border);
    border-radius: 20px;
    box-shadow: var(--paac-shadow-soft);
    height: 100%;
    padding: 18px 16px 16px;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.scorecard-metric-card:hover {
    box-shadow: var(--paac-panel-shadow-strong);
    transform: translateY(-2px);
}

.scorecard-metric-card.is-off-track {
    background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-tone-danger-bg) 100%);
    border-color: var(--paac-tone-danger-border);
}

.scorecard-metric-status {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    margin-bottom: 10px;
    padding: 6px 10px;
    text-transform: uppercase;
}

.scorecard-metric-status.is-good {
    background: var(--paac-tone-success-bg);
    color: var(--paac-tone-success-text);
}

.scorecard-metric-status.is-bad {
    background: var(--paac-tone-danger-bg);
    color: var(--paac-tone-danger-text);
}

.scorecard-metric-name {
    color: var(--paac-text-strong);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 14px;
    min-height: 42px;
}

.scorecard-metric-values {
    color: var(--paac-text-muted);
    font-size: 0.92rem;
    line-height: 1.6;
    margin: 12px 0 0;
    text-align: center;
}

.scorecard-metric-values strong {
    color: var(--paac-text-strong);
    font-size: 1rem;
}

.scorecard-metric-date {
    color: var(--paac-text-muted);
    font-size: 0.85rem;
    margin-top: 10px;
    text-align: center;
}

.scorecard-gauge {
    margin: 0 auto;
    max-width: 200px;
    width: 100%;
}

.scorecard-chart-panel,
.report-mini-card {
    background: var(--paac-panel-bg);
    border: 1px solid var(--paac-panel-border);
    border-radius: 20px;
    box-shadow: var(--paac-shadow-soft);
}

.scorecard-chart-panel {
    padding: 20px;
}

.report-mini-card {
    display: flex;
    flex-direction: column;
    height: 360px;
    min-height: 360px;
    overflow: hidden;
    padding: 18px;
}

.report-mini-card .table-responsive {
    flex: 1 1 auto;
    display: block;
    height: 100%;
    max-height: 100%;
    min-height: 0;
    overflow-x: auto;
    overflow-y: auto!important;
}

.report-mini-card .table-responsive table {
    margin-bottom: 0;
}

.report-section-title {
    color: var(--paac-text-strong);
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 14px;
}

.whatsapp-activity-direction {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.24rem 0.65rem;
    white-space: nowrap;
}

.whatsapp-activity-direction-incoming {
    background: var(--paac-tone-info-bg);
    border-color: var(--paac-tone-info-border);
    color: var(--paac-tone-info-text);
}

.whatsapp-activity-direction-outgoing {
    background: var(--paac-tone-success-bg);
    border-color: var(--paac-tone-success-border);
    color: var(--paac-tone-success-text);
}

.whatsapp-activity-row-incoming > td:first-child {
    border-left: 4px solid var(--paac-tone-info-border);
}

.whatsapp-activity-row-outgoing > td:first-child {
    border-left: 4px solid var(--paac-tone-success-border);
}

.report-section-copy {
    color: var(--paac-text-muted);
    font-size: 0.9rem;
}

.scorecard-kpi-link {
    color: var(--paac-white);
    font-weight: 600;
    margin-top: auto;
    padding-top: 0.75rem;
    text-align: left;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.scorecard-kpi-link:hover,
.scorecard-kpi-link:focus {
    color: var(--paac-white);
    opacity: 0.8;
}

.workflow-mini-stat-grid .scorecard-kpi-link {
    margin-top: 0;
    padding-top: 0;
}

.workflow-kpi-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .85rem;
    margin-top: auto;
    padding-top: .55rem;
}

.workflow-kpi-actions .scorecard-kpi-link {
    margin-top: 0;
    padding-top: 0;
}

.workflow-kpi-split {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: .35rem;
}

.workflow-kpi-split-item {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid var(--paac-hero-glass-border);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    min-height: 76px;
    min-width: 0;
    padding: .6rem .65rem;
}

button.workflow-kpi-split-item {
    color: inherit;
    cursor: pointer;
    text-align: left;
}

button.workflow-kpi-split-item:hover,
button.workflow-kpi-split-item:focus {
    background: rgba(255, 255, 255, 0.14);
    border-color: var(--paac-hero-button-border-hover);
    outline: none;
}

.workflow-kpi-split-label {
    color: var(--paac-hero-label);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.workflow-kpi-split-value {
    color: var(--paac-white);
    font-size: 1.55rem;
    font-weight: 800;
    line-height: 1.1;
    margin-top: .25rem;
}

.workflow-kpi-split-item .scorecard-kpi-link {
    margin-top: auto;
    padding-top: .35rem;
}

.scorecard-hero .workflow-overview-trigger,
.clive-tech-hero-actions .btn {
    background: var(--paac-hero-glass-bg);
    border-color: var(--paac-hero-button-border);
    color: var(--paac-white);
    backdrop-filter: blur(4px);
}

.scorecard-hero .workflow-overview-trigger:hover,
.scorecard-hero .workflow-overview-trigger:focus,
.clive-tech-hero-actions .btn:hover,
.clive-tech-hero-actions .btn:focus {
    background: var(--paac-hero-glass-bg-strong);
    border-color: var(--paac-hero-button-border-hover);
    color: var(--paac-white);
}

.clive-tech-hero .card-body {
    z-index: 1;
}

.clive-tech-hero-intro {
    background: linear-gradient(180deg, var(--paac-hero-intro-bg-start) 0%, var(--paac-hero-intro-bg-end) 100%);
    border: 1px solid var(--paac-hero-glass-border-strong);
    border-radius: 22px;
    box-shadow: var(--paac-hero-intro-shadow);
    display: flex;
    flex-direction: column;
    gap: 0;
    height: 100%;
    min-height: 100%;
    padding: 1.35rem;
    position: relative;
}

.clive-tech-hero-intro::after {
    content: "";
    position: absolute;
    inset: auto -30px -30px auto;
    width: 180px;
    height: 180px;
    border-radius: 999px;
    background: radial-gradient(circle, var(--paac-hero-intro-bg-start) 0%, rgba(255,255,255,0) 72%);
    pointer-events: none;
}

.clive-tech-hero-meta {
    display: grid;
    gap: 0.75rem;
    margin-top: 1.2rem;
}

.clive-tech-hero-meta-item {
    background: var(--paac-hero-subpanel-bg);
    border: 1px solid var(--paac-hero-glass-border);
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    padding: 0.75rem 0.85rem;
}

.clive-tech-hero-meta-item strong {
    color: var(--paac-white);
    font-size: 0.95rem;
    font-weight: 700;
}

.clive-tech-hero-meta-label {
    color: var(--paac-hero-label);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin-bottom: 0.22rem;
    text-transform: uppercase;
}

.clive-tech-hero-quickstats {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 1rem;
}

.clive-tech-hero-quickstat {
    background: var(--paac-hero-subpanel-bg);
    border: 1px solid var(--paac-hero-glass-border);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    min-height: 96px;
    padding: 0.9rem;
}

.clive-tech-hero-quickstat-label {
    color: var(--paac-hero-label);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.clive-tech-hero-quickstat-value {
    color: var(--paac-white);
    font-size: 1.8rem;
    font-weight: 800;
    line-height: 1.1;
    margin-top: auto;
}

.clive-tech-hero-actions {
    margin-top: auto;
    padding-top: 1.25rem;
}

.clive-tech-hero-actions .btn {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-weight: 600;
    justify-content: center;
    min-height: 2rem;
    padding: 0.45rem 0.9rem;
}

.workflow-summary-line {
    background: linear-gradient(90deg, var(--paac-summary-bg-start), var(--paac-summary-bg-end));
    border: 1px solid var(--paac-summary-border);
    border-radius: 14px;
    color: var(--paac-ink);
    padding: 0.8rem 0.95rem;
}

.workflow-summary-open,
.workflow-summary-lta,
.workflow-summary-chase,
.workflow-summary-sla {
    font-weight: 700;
}

.workflow-summary-open {
    color: var(--paac-blue);
}

.workflow-summary-lta {
    color: var(--paac-orange);
}

.workflow-summary-chase {
    color: var(--paac-teal);
}

.workflow-summary-sla {
    color: var(--paac-maroon);
}

.workflow-overview-trigger {
    border-radius: 999px;
    padding: 0.45rem 0.9rem;
    font-weight: 600;
}

.workflow-overview-modal .modal-content {
    border: 0;
    border-radius: 22px;
    background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-white) 100%);
    border-color: var(--paac-border-strong);
}

.workflow-overview-eyebrow {
    letter-spacing: 0.12em;
    color: var(--paac-orange);
}

.workflow-overview-stat,
.workflow-overview-section,
.workflow-overview-card {
    background: var(--paac-white);
    border: 1px solid var(--paac-border-strong);
    border-radius: 18px;
    box-shadow: var(--paac-shadow-soft);
}

.workflow-overview-stat {
    padding: 1rem 1.1rem;
    height: 100%;
}

.workflow-overview-stat.is-warning {
    background: var(--paac-tone-warning-bg);
    border-color: var(--paac-tone-warning-border);
    box-shadow: var(--paac-tone-warning-ring);
}

.workflow-overview-stat.is-warning .workflow-overview-stat-value {
    color: var(--paac-tone-warning-text);
}

.workflow-overview-stat.is-danger {
    background: var(--paac-tone-danger-bg);
    border-color: var(--paac-tone-danger-border);
    box-shadow: var(--paac-tone-danger-ring);
}

.workflow-overview-stat.is-danger .workflow-overview-stat-value {
    color: var(--paac-tone-danger-text);
}

.workflow-overview-stat-label {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--paac-text-muted);
    font-weight: 700;
}

.workflow-overview-stat-value {
    font-size: 2rem;
    line-height: 1.1;
    font-weight: 800;
    color: var(--paac-text-strong);
}

.workflow-overview-stat-meta {
    color: var(--paac-text-muted);
    font-size: 0.9rem;
}

.workflow-sla-stat-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .28rem;
}

.workflow-mini-stat-grid {
    display: grid;
    gap: .35rem .55rem;
    margin: .45rem 0 .35rem;
}

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

.workflow-mini-stat-grid-sla {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.workflow-mini-stat-grid .workflow-sla-stat-row {
    margin-top: 0;
    min-width: 0;
}

.workflow-sla-stat-chip {
    background: var(--paac-surface-subtle-alt);
    border: 1px solid var(--paac-border-strong);
    border-radius: 999px;
    color: var(--paac-text-muted);
    font-size: .66rem;
    font-weight: 700;
    line-height: 1;
    padding: .22rem .42rem;
    text-transform: uppercase;
}

.workflow-sla-stat-number {
    color: var(--paac-ink);
    font-size: .9rem;
    font-weight: 700;
    line-height: 1;
    min-width: .5rem;
}

.scorecard-kpi .workflow-sla-stat-row {
    margin-top: .25rem;
}

.scorecard-kpi .workflow-sla-stat-chip {
    background: var(--paac-hero-intro-bg-start);
    border-color: var(--paac-hero-glass-border-strong);
    color: var(--paac-hero-text-soft);
}

.scorecard-kpi .workflow-sla-stat-number,
.scorecard-kpi .workflow-sla-stat-empty {
    color: var(--paac-white);
}

.workflow-overview-section {
    padding: 1rem;
}

.workflow-overview-section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.workflow-overview-section-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: var(--paac-tone-info-bg);
    border: 1px solid var(--paac-tone-info-border);
    color: var(--paac-tone-info-accent);
    padding: 0.28rem 0.7rem;
    font-size: 0.78rem;
    font-weight: 600;
}

.workflow-overview-card {
    padding: 0.9rem 1rem;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.workflow-overview-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: var(--paac-blue);
}

.overview-accent-primary::before {
    background: var(--paac-blue);
}

.overview-accent-warning::before {
    background: var(--paac-orange);
}

.overview-accent-info::before {
    background: var(--paac-teal);
}

.overview-accent-sla::before {
    background: var(--paac-purple);
}

.overview-accent-danger::before {
    background: var(--paac-maroon);
}

.workflow-overview-card.ticket-priority-low::before {
    background: var(--paac-tone-neutral-accent);
}

.workflow-overview-card.ticket-priority-medium::before {
    background: var(--paac-orange);
}

.workflow-overview-card.ticket-priority-high::before {
    background: var(--paac-lime);
}

.workflow-overview-card.ticket-priority-critical::before {
    background: var(--paac-tone-danger-accent);
}

.workflow-overview-topline,
.workflow-overview-meta,
.workflow-overview-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 0.75rem;
}

.workflow-overview-topline {
    align-items: baseline;
    margin-bottom: 0.45rem;
}

.workflow-overview-ticket a {
    font-weight: 800;
    color: var(--paac-ink);
    text-decoration: none;
}

.workflow-overview-number {
    font-size: 0.88rem;
    color: var(--paac-text-muted);
}

.workflow-overview-title {
    font-size: 1rem;
    font-weight: 700;
    color: var(--paac-ink);
    margin-bottom: 0.45rem;
}

.workflow-priority-badge {
    border: 1px solid var(--paac-border-strong);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    padding: 0.35rem 0.65rem;
    white-space: nowrap;
}

.workflow-priority-badge.ticket-priority-low {
    background: var(--paac-tone-neutral-bg);
    border-color: var(--paac-tone-neutral-border);
    color: var(--paac-tone-neutral-text);
}

.workflow-priority-badge.ticket-priority-medium {
    background: var(--paac-tone-warning-bg);
    border-color: var(--paac-tone-warning-border);
    color: var(--paac-tone-warning-text);
}

.workflow-priority-badge.ticket-priority-high {
    background: var(--paac-tone-success-bg);
    border-color: var(--paac-tone-success-border);
    color: var(--paac-tone-success-text);
}

.workflow-priority-badge.ticket-priority-critical {
    background: var(--paac-tone-danger-bg);
    border-color: var(--paac-tone-danger-border);
    color: var(--paac-tone-danger-text);
}

.workflow-status-badge {
    background: var(--paac-tone-neutral-bg);
    border: 1px solid var(--paac-tone-neutral-border);
    border-radius: 999px;
    color: var(--paac-tone-neutral-text);
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    padding: 0.35rem 0.65rem;
    white-space: nowrap;
}

@media (max-width: 767.98px) {
    .workflow-ticket-list-table-wrap {
        overflow-x: visible;
    }

    .workflow-ticket-list-table th,
    .workflow-ticket-list-table td {
        white-space: normal;
    }

    .workflow-ticket-list-table .workflow-ticket-col-ticket,
    .workflow-ticket-list-table .workflow-ticket-col-booked,
    .workflow-ticket-list-table .workflow-ticket-col-assigned,
    .workflow-ticket-list-table .workflow-ticket-col-first-response,
    .workflow-ticket-list-table .workflow-ticket-col-last-visible {
        display: none;
    }

    .workflow-ticket-list-table .workflow-ticket-col-priority {
        width: 5.75rem;
    }

    .workflow-ticket-list-table .workflow-ticket-col-company {
        width: 32%;
    }

    .workflow-ticket-list-table .workflow-ticket-col-title {
        min-width: 0;
    }

    .workflow-ticket-list-table .workflow-sort-indicator {
        display: none;
    }
}

.workflow-overview-meta {
    margin-bottom: 0.65rem;
    color: var(--paac-text-muted);
    font-size: 0.82rem;
    font-weight: 600;
}

.workflow-ticket-list-table .workflow-ticket-col-duplicate {
    box-sizing: border-box;
    width: 2.25rem;
    min-width: 2.25rem;
    max-width: 2.25rem;
    padding-left: 0.3rem;
    padding-right: 0.3rem;
    vertical-align: middle;
}

.workflow-ticket-duplicate-icon {
    color: var(--paac-orange, #f6a623);
}

.workflow-overview-footer {
    color: var(--paac-text-muted);
    font-size: 0.82rem;
}

.chart-area.report-chart {
    height: 20rem;
}

@media (min-width: 992px) {
    .scorecard-toolbar .toolbar-form-inline,
    .scorecard-toolbar .toolbar-meta-inline {
        flex-wrap: nowrap !important;
    }

    .scorecard-toolbar .toolbar-form-inline .form-control,
    .scorecard-toolbar .toolbar-form-inline .form-select {
        width: auto;
    }
}

@media (max-width: 991.98px) {
    #content .container-fluid:first-of-type {
        padding-left: 3px;
        padding-right: 3px;
    }

    .card-body {
        padding: 3px;
    }

    .scorecard-empty-shell,
    .scorecard-shell {
        padding: 0;
    }

    .scorecard-empty-toolbar,
    .scorecard-toolbar {
        margin-top: 16px;
    }

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

    .clive-tech-hero-intro {
        min-height: 0;
    }
}

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

    .clive-tech-hero-quickstats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body::before {
        content: "";
        position: fixed;
        inset: 0;
        background: rgba(8, 25, 39, 0.42);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.22s ease;
        z-index: 1040;
    }

    body.sidebar-mobile-open {
        overflow: hidden;
    }

    body.sidebar-mobile-open::before {
        opacity: 1;
        pointer-events: auto;
    }

    .sidebar {
        position: fixed !important;
        top: 0;
        left: 0;
        width: min(20rem, 88vw) !important;
        height: 100vh;
        height: 100dvh;
        max-height: 100vh;
        max-height: 100dvh;
        background: linear-gradient(180deg, var(--paac-sidebar-bg-start) 0%, var(--paac-sidebar-bg-end) 100%);
        transform: translateX(calc(-100% - 1rem));
        transition: transform 0.22s ease;
        z-index: 1050 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .sidebar .container-fluid {
        min-height: 100%;
        background: inherit;
    }

    .sidebar .app-sidebar-nav {
        padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
    }

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

    .sidebar .sidebar-brand .sidebar-brand-text {
        display: inline-flex !important;
    }

    .sidebar .nav-item .collapse {
        position: static !important;
        width: auto !important;
    }

    .nav-group-collapse {
        margin-top: 0.35rem;
    }

    .nav-group-panel {
        padding: 0.7rem;
        padding-left: 0.55rem;
        border-left: 0;
        border-radius: 16px;
        background: var(--paac-sidebar-panel-bg);
        border: 1px solid var(--paac-sidebar-panel-border);
        box-shadow: var(--paac-sidebar-panel-shadow);
    }

    .sidebar-dark .nav-item .nav-link.nav-group-toggle {
        justify-content: space-between;
    }

    .sidebar-dark .nav-item .nav-link.nav-sub-link {
        padding-left: 0.8rem;
    }
}

@media (min-width: 768px) {
    .sidebar {
        width: 20rem !important;
    }

    .sidebar:not(.toggled) {
        position: sticky;
        top: 0;
        align-self: flex-start;
        height: 100vh;
        height: 100dvh;
    }

    .sidebar.toggled {
        width: 5rem !important;
    }
}

@media (min-width: 768px) {
    .sidebar.toggled .nav-item .nav-link span {
        display: block;
        text-align: center!important;
    }
}

@media (min-width: 768px) {
    .sidebar.toggled .nav-item .collapse {
        position: absolute;
        left: 4.25rem;
        z-index: 100;
        top: 2px;
        -webkit-animation-name: growIn;
        animation-name: growIn;
        -webkit-animation-duration: .2s;
        animation-duration: .2s;
        -webkit-animation-timing-function: transform cubic-bezier(.18,1.25,.4,1),opacity cubic-bezier(0,1,.4,1);
        animation-timing-function: transform cubic-bezier(.18,1.25,.4,1),opacity cubic-bezier(0,1,.4,1);
    }
}

/* global polish */

body {
    background: var(--paac-app-bg);
}

#wrapper #content-wrapper {
    background-color: transparent;
}

#content .container-fluid {
    padding-left: 1rem;
    padding-right: 1rem;
}

.sidebar {
    box-shadow: var(--paac-sidebar-shadow);
    overflow: visible;
    position: relative;
    z-index: 1030;
}

.sidebar:not(.toggled) {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.sidebar:not(.toggled) .container-fluid {
    min-height: 100vh;
    min-height: 100dvh;
}

.app-sidebar-nav {
    width: 100%;
    padding: 0.65rem 0 1rem;
}

.sidebar .sidebar-brand {
    min-height: 4.75rem;
}

.sidebar .sidebar-brand .sidebar-brand-text {
    font-weight: 700;
    letter-spacing: 0.04em;
}

.sidebar-dark .nav-item {
    margin: 0.12rem 0.65rem;
}

.sidebar-dark .nav-item.nav-group-item {
    margin-bottom: 0.45rem;
}

.sidebar-dark .nav-item .nav-link {
    border-radius: 14px;
    padding: 0.8rem 1rem;
    transition: background-color 0.18s ease, transform 0.18s ease;
}

.sidebar-dark .nav-item .nav-link.nav-group-toggle,
.sidebar-dark .nav-item .nav-link.nav-sub-link {
    width: 100%;
    text-align: left;
    font-size: 0.78rem;
}

.nav-group-toggle-main {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.nav-group-toggle-main i {
    width: 1rem;
    text-align: center;
}

.sidebar-dark .nav-item .nav-link.nav-group-toggle {
    background: var(--paac-sidebar-link-bg);
    border: 1px solid var(--paac-sidebar-link-border);
    min-height: 3rem;
}

.sidebar-dark .nav-item .nav-link.nav-group-toggle[aria-expanded="true"] {
    background: var(--paac-sidebar-link-bg-active);
    border-color: var(--paac-sidebar-link-border-active);
}

.nav-group-collapse {
    margin-top: 0.4rem;
}

.nav-group-panel {
    display: grid;
    gap: 0.28rem;
    border-left: 1px solid var(--paac-sidebar-sub-link-border);
}

.sidebar-dark .nav-item .nav-link.nav-sub-link {
    border-radius: 12px;
    padding: 0.7rem 0.85rem;
    color: var(--paac-sidebar-sub-link-text);
    background: transparent;
}

.sidebar-dark .nav-item .nav-link.nav-sub-link i {
    font-size: 0.8rem;
    margin-right: 0.55rem;
}

.sidebar-dark .nav-item .nav-link.nav-sub-link.active {
    background: var(--paac-sidebar-link-bg-active);
    color: var(--paac-white);
}

.nav-group-collapse.collapsing .nav-group-panel,
.nav-group-collapse.show .nav-group-panel {
    animation: navDrillIn 0.22s ease;
}

.sidebar-dark .nav-item .nav-link span {
    font-weight: 600;
}

.sidebar-dark .nav-item .nav-link:hover,
.sidebar-dark .nav-item .nav-link:focus {
    background: var(--paac-sidebar-link-bg-hover);
    transform: translateX(2px);
}

.sidebar-dark .nav-item.active .nav-link,
.sidebar-dark .nav-item .nav-link.active {
    background: var(--paac-sidebar-link-bg-active);
}

.topbar {
    height: 4.25rem;
    background: var(--paac-panel-bg) !important;
    backdrop-filter: blur(10px);
    box-shadow: var(--paac-shadow-soft) !important;
    position: relative;
    z-index: 1030;
}

.topbar .nav-item .nav-link {
    border-radius: 999px;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.topbar .nav-item .nav-link:hover,
.topbar .nav-item .nav-link:focus {
    background: var(--paac-topbar-hover-bg);
}

.img-profile {
    box-shadow: var(--paac-avatar-ring);
}

.card {
    border: 1px solid var(--paac-card-border);
    border-radius: 18px;
    box-shadow: var(--paac-shadow-medium);
    overflow: hidden;
}

.card-header {
    background-color: var(--paac-card-header-bg);
    border-bottom: 1px solid var(--paac-card-header-border);
    padding: 1rem 1.25rem;
}

.card-body {
    padding: 1.25rem;
}

.dropdown-menu {
    border: 1px solid var(--paac-dropdown-border);
    border-radius: 16px;
    box-shadow: var(--paac-panel-shadow-strong);
    padding: 0.5rem;
    z-index: 1040;
}

.dropdown-item {
    border-radius: 10px;
    font-weight: 500;
    padding: 0.6rem 0.85rem;
}

.nav-panel-menu {
    min-width: min(28rem, 88vw);
    max-width: min(34rem, 92vw);
    max-height: 70vh;
    overflow: auto;
    padding: 0.75rem;
}

.nav-panel-title {
    color: var(--paac-text-strong);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.15rem 0.35rem 0.75rem;
}

.topbar-menu-group + .topbar-menu-group {
    margin-top: 0.7rem;
    padding-top: 0.7rem;
    border-top: 1px solid var(--paac-card-header-border);
}

.topbar-menu-heading {
    color: var(--paac-text-muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 0.15rem 0.35rem 0.45rem;
}

.nav-item-link {
    white-space: normal;
}

.btn {
    border-radius: 12px;
    font-weight: 700;
    letter-spacing: 0.01em;
    transition: transform 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease, border-color 0.16s ease;
}

.btn:hover,
.btn:focus {
    box-shadow: var(--paac-button-shadow);
    transform: translateY(-1px);
}

.btn-sm {
    border-radius: 10px;
}

@media (min-width:768px) {
    .sidebar:not(.toggled) .nav-group-collapse {
        position: static;
    }

    .sidebar:not(.toggled) .nav-group-collapse.show .nav-group-panel,
    .sidebar:not(.toggled) .nav-group-collapse.collapsing .nav-group-panel {
        max-height: min(32rem, calc(100vh - 10rem));
        max-height: min(32rem, calc(100dvh - 10rem));
        overflow-y: auto;
        overscroll-behavior: contain;
        padding-right: 0.25rem;
        scrollbar-width: thin;
    }

    .sidebar:not(.toggled) .nav-item .nav-link.nav-group-toggle::after {
        width: 1rem;
        text-align: center;
        float: right;
        border: 0;
        font-weight: 900;
        content: "\f107";
        font-family: Font Awesome\ 5 Free;
        opacity: 0.7;
    }

    .sidebar:not(.toggled) .nav-item .nav-link.nav-group-toggle.collapsed::after {
        content: "\f105";
    }

    .sidebar.toggled .nav-item.nav-group-item {
        position: relative;
    }

    .sidebar.toggled .nav-item.nav-group-item:hover,
    .sidebar.toggled .nav-item.nav-group-item:focus-within {
        z-index: 1085;
    }

    .sidebar.toggled .nav-item .nav-link.nav-group-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0.9rem 0.4rem;
    }

    .sidebar.toggled .nav-group-toggle-main {
        width: 100%;
        justify-content: center;
    }

    .sidebar.toggled .nav-group-toggle-main i {
        width: auto;
        margin: 0;
    }

    .sidebar.toggled .nav-item .nav-link.nav-group-toggle .nav-group-label,
    .sidebar.toggled .nav-item .nav-link.nav-sub-link span {
        display: none;
    }

    .sidebar.toggled .nav-group-collapse {
        position: absolute;
        left: 5.2rem;
        top: 0;
        width: min(18rem, calc(100vw - 6rem));
        max-height: calc(100vh - 4rem);
        max-height: calc(100dvh - 4rem);
        margin-top: 0;
        z-index: 1070;
        border-radius: 18px;
        overflow: hidden;
        background: transparent;
        box-shadow: none;
        transform: translateY(var(--paac-sidebar-flyout-offset, 0px));
    }

    .sidebar.toggled .nav-group-collapse.show {
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
    }

    .sidebar.toggled .nav-group-panel {
        padding: 0.6rem;
        margin-left: 0;
        border-left: 0;
        border-radius: 18px;
        background: var(--paac-sidebar-panel-bg);
        border: 1px solid var(--paac-sidebar-panel-border);
        box-shadow: var(--paac-sidebar-panel-shadow);
    }

    .sidebar.toggled .nav-item .nav-link.nav-sub-link span {
        display: inline;
    }

    .sidebar.toggled .nav-item,
    .sidebar.toggled .nav-item .nav-link {
        overflow: visible;
    }

    .sidebar.toggled .nav-item > .nav-link[data-nav-label]::before {
        content: attr(data-nav-label);
        position: absolute;
        left: calc(100% + 0.7rem);
        top: 50%;
        transform: translateY(-50%) translateX(-6px);
        background: var(--paac-sidebar-panel-bg);
        border: 1px solid var(--paac-sidebar-panel-border);
        border-radius: 12px;
        box-shadow: var(--paac-sidebar-panel-shadow);
        color: var(--paac-white);
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 0.01em;
        line-height: 1.2;
        opacity: 0;
        padding: 0.55rem 0.8rem;
        pointer-events: none;
        transition: opacity 0.16s ease, transform 0.16s ease;
        white-space: nowrap;
        z-index: 1080;
    }

    .sidebar.toggled .nav-item > .nav-link[data-nav-label]::after {
        content: "";
        position: absolute;
        left: calc(100% + 0.38rem);
        top: 50%;
        transform: translateY(-50%) translateX(-6px);
        width: 0.7rem;
        height: 0.7rem;
        background: var(--paac-sidebar-panel-bg);
        border-left: 1px solid var(--paac-sidebar-panel-border);
        border-top: 1px solid var(--paac-sidebar-panel-border);
        opacity: 0;
        pointer-events: none;
        rotate: -45deg;
        transition: opacity 0.16s ease, transform 0.16s ease;
        z-index: 1079;
    }

    .sidebar.toggled .nav-item > .nav-link[data-nav-label]:hover::before,
    .sidebar.toggled .nav-item > .nav-link[data-nav-label]:hover::after,
    .sidebar.toggled .nav-item > .nav-link[data-nav-label]:focus-visible::before,
    .sidebar.toggled .nav-item > .nav-link[data-nav-label]:focus-visible::after {
        opacity: 1;
        transform: translateY(-50%) translateX(0);
    }
}

@media (min-width:992px) {
    .nav-panel-menu {
        columns: 2;
        column-gap: 0.85rem;
    }

    .topbar-menu-group {
        break-inside: avoid;
    }
}

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

.form-control,
.custom-select,
select.form-control {
    border: 1px solid var(--paac-form-border);
    border-radius: 12px;
    box-shadow: var(--paac-form-shadow-inset);
    min-height: 42px;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.form-control:focus,
.custom-select:focus,
select.form-control:focus {
    border-color: rgba(0, 98, 116, 0.4);
    box-shadow: 0 0 0 0.18rem rgba(0, 98, 116, 0.12);
}

textarea.form-control {
    min-height: 90px;
}

.table {
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 0;
}

.table-responsive.table,
.app-table-shell {
    background: var(--paac-table-shell-bg);
    border: 1px solid var(--paac-card-header-border);
    border-radius: 16px;
    box-shadow: var(--paac-table-shell-sheen);
}

.table-responsive.table,
.app-table-shell.table-responsive {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.app-table-shell:not(.table-responsive) {
    overflow: hidden;
}

.table-responsive.table .table {
    background: transparent;
}

.table.table-fixed-columns {
    table-layout: fixed;
    width: 100%;
}

.table.table-fixed-columns th,
.table.table-fixed-columns td {
    overflow-wrap: break-word;
}

.app-table {
    margin-bottom: 0;
}

.table thead th {
    background: var(--paac-table-head-bg);
    border-bottom: 1px solid var(--paac-card-header-border);
    color: var(--paac-text-strong);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.table td,
.table th {
    border-top: 1px solid var(--paac-table-row-border);
    padding: 0.7rem 0.3rem;
    vertical-align: middle;
}

.table.table-bordered th,
.table.table-bordered td {
    border-left: 0;
    border-right: 0;
}

.table thead th:first-child,
.table tbody td:first-child,
.table tfoot td:first-child {
    padding-left: 1.1rem;
}

.table thead th:last-child,
.table tbody td:last-child,
.table tfoot td:last-child {
    padding-right: 1.1rem;
}

.table tfoot td,
.table tfoot th {
    background: var(--paac-table-foot-bg);
    border-top: 1px solid var(--paac-card-header-border);
    color: var(--paac-text-muted);
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
}

.app-table.table-bordered th,
.app-table.table-bordered td {
    border-left: 0;
    border-right: 0;
}

.app-table thead th:first-child,
.app-table tbody td:first-child,
.app-table tfoot td:first-child {
    padding-left: 1.1rem;
}

.app-table thead th:last-child,
.app-table tbody td:last-child,
.app-table tfoot td:last-child {
    padding-right: 1.1rem;
}

.app-table tfoot td {
    background: var(--paac-table-foot-bg);
    border-top: 1px solid var(--paac-card-header-border);
    color: var(--paac-text-muted);
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
}

.table-hover tbody tr:hover,
.table-striped tbody tr:nth-of-type(2n+1) {
    background-color: var(--paac-table-row-hover);
}

.autotask-dw-page {
    --dw-soft-bg: #f8f9fc;
    --dw-sticky-head-bg: #f8f9fc;
    --dw-preview-text: #3a3b45;
    --dw-border: #e3e6f0;
    --dw-column-text: #5a5c69;
    --dw-muted-text: #858796;
}

.dw-query-editor {
    min-height: 260px;
    border: 1px solid #d1d3e2;
    border-radius: .35rem;
    font-size: 14px;
}

#dw-query-text {
    display: none;
}

.dw-ai-sql-preview {
    background: var(--dw-soft-bg);
    border-radius: .25rem;
    color: var(--dw-preview-text);
    max-height: 280px;
    overflow: auto;
    padding: .75rem;
    white-space: pre-wrap;
}

.dw-saved-query-panel {
    background: var(--dw-soft-bg);
    border: 1px solid var(--dw-border);
    border-radius: .35rem;
    padding: .85rem;
}

.dw-saved-query-panel label {
    color: var(--dw-preview-text);
}

.dw-saved-query-panel .btn {
    white-space: nowrap;
}

.dw-ai-thread {
    border: 1px solid var(--dw-border);
    border-radius: .35rem;
    max-height: 520px;
    overflow-y: auto;
    padding: .75rem;
}

.dw-ai-thread-item {
    border-bottom: 1px solid var(--dw-border);
    padding: .75rem 0;
}

.dw-ai-thread-item:first-child {
    padding-top: 0;
}

.dw-ai-thread-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.dw-ai-thread-label {
    color: var(--dw-preview-text);
    font-size: .75rem;
    font-weight: 700;
    margin-bottom: .25rem;
    text-transform: uppercase;
}

.dw-ai-thread-body {
    color: var(--dw-column-text);
    white-space: pre-wrap;
}

.dw-ai-thread-sql {
    background: var(--dw-soft-bg);
    border-radius: .25rem;
    color: var(--dw-preview-text);
    margin: .75rem 0 0;
    max-height: 260px;
    overflow: auto;
    padding: .75rem;
    white-space: pre-wrap;
}

.dw-ai-thread-notes {
    color: var(--dw-muted-text);
    margin: .75rem 0 0;
}

.dw-table-list {
    max-height: 640px;
    overflow-y: auto;
}

.dw-table-item {
    border: 1px solid var(--dw-border);
    border-radius: .35rem;
    margin-bottom: .5rem;
}

.dw-table-button,
.dw-column-button {
    background: transparent;
    border: 0;
    text-align: left;
    width: 100%;
}

.dw-table-button {
    font-weight: 700;
    padding: .55rem .65rem;
}

.dw-column-button {
    color: var(--dw-column-text);
    font-size: .85rem;
    padding: .25rem .65rem;
}

.dw-column-button:hover,
.dw-table-button:hover {
    background: var(--dw-soft-bg);
}

.dw-column-type {
    color: var(--dw-muted-text);
    font-size: .75rem;
}

.dw-result-wrap {
    max-height: 620px;
}

#dw-result-table th {
    position: sticky;
    top: 0;
    background: var(--dw-sticky-head-bg);
    color: var(--dw-preview-text);
    border-bottom: 1px solid var(--dw-border);
    box-shadow: 0 2px 0 var(--dw-border);
    z-index: 3;
    white-space: nowrap;
}

#dw-result-table td {
    max-width: 420px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alert {
    border: 0;
    border-radius: 16px;
    box-shadow: var(--paac-shadow-soft);
}

.dev-admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1rem;
}

.dev-admin-grid.dev-admin-grid-wide {
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    align-items: start;
}

.dev-admin-link-card {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border: 1px solid var(--paac-card-header-border);
    border-radius: 16px;
    background: linear-gradient(180deg, var(--paac-dev-card-bg-start) 0%, var(--paac-dev-card-bg-end) 100%);
    color: inherit;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.dev-admin-link-card:hover {
    color: inherit;
    text-decoration: none;
    transform: translateY(-2px);
    border-color: var(--paac-dev-card-border-hover);
    box-shadow: var(--paac-dev-card-shadow-hover);
}

.dev-admin-link-icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--paac-tone-info-bg);
    color: var(--paac-tone-info-accent);
    font-size: 1.1rem;
}

.permission-set-list {
    display: flex;
    flex-direction: column;
}

.permission-set-list-item {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.95rem 1.1rem;
    border-bottom: 1px solid var(--paac-table-row-border);
    color: inherit;
    text-decoration: none;
    transition: background-color 0.18s ease, border-color 0.18s ease;
}

.permission-set-list-item:hover,
.permission-set-list-item.active {
    color: inherit;
    text-decoration: none;
    background: var(--paac-chip-bg);
}

.permission-set-list-item.active {
    border-left: 4px solid var(--paac-tone-info-accent);
    padding-left: calc(1.1rem - 4px);
}

.permission-set-list-title {
    font-weight: 700;
    color: var(--paac-text-strong);
}

.permission-set-list-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.25rem;
    font-size: 0.78rem;
    color: var(--paac-text-muted);
}

.permission-set-list-count {
    white-space: nowrap;
    font-size: 0.78rem;
    color: var(--paac-text-muted);
}

.permission-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.permission-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: var(--paac-chip-bg);
    color: var(--paac-text-strong);
    font-size: 0.8rem;
    font-weight: 700;
}

.module-pages-disclosure {
    margin: 0;
}

.module-pages-disclosure summary {
    list-style: none;
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    align-items: flex-start;
    cursor: pointer;
    padding: 0.15rem 0;
}

.module-pages-disclosure summary::-webkit-details-marker {
    display: none;
}

.module-pages-summary-main {
    min-width: 0;
}

.module-pages-summary-meta {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    background: var(--paac-chip-bg);
    color: var(--paac-text-muted);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.module-pages-panel {
    margin-top: 0.7rem;
    padding-top: 0.7rem;
    border-top: 1px solid var(--paac-table-row-border);
    display: grid;
    gap: 0.55rem;
}

.module-page-item {
    padding: 0.55rem 0.65rem;
    border-radius: 12px;
    background: var(--paac-table-foot-bg);
}

.module-page-name {
    color: var(--paac-text-strong);
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.module-page-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    color: var(--paac-text-muted);
    font-size: 0.76rem;
}

.module-page-meta code {
    font-size: 0.74rem;
}

.dev-admin-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.9rem;
}

.dev-admin-stat-card {
    padding: 1rem 1.1rem;
    border-radius: 16px;
    border: 1px solid var(--paac-card-header-border);
    background: linear-gradient(180deg, var(--paac-dev-card-bg-start) 0%, var(--paac-dev-card-bg-end) 100%);
}

.dev-admin-stat-label {
    color: var(--paac-text-muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dev-admin-stat-value {
    color: var(--paac-text-strong);
    font-size: 1.9rem;
    font-weight: 800;
    line-height: 1.1;
    margin-top: 0.35rem;
}

.page-registry-search {
    width: min(320px, 100%);
}

.page-registry-cell {
    min-width: 260px;
    vertical-align: top !important;
}

.page-registry-save {
    min-width: 150px;
}

.page-registry-block {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.page-registry-heading {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 0.45rem;
}

.page-registry-title {
    font-weight: 800;
    color: var(--paac-text-strong);
    word-break: break-all;
}

.page-registry-id {
    color: var(--paac-text-muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.page-registry-flags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.page-registry-flag {
    display: inline-flex;
    align-items: center;
    padding: 0.22rem 0.55rem;
    border-radius: 999px;
    background: var(--paac-chip-bg);
    color: var(--paac-text-strong);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.page-registry-flag.warning {
    background: var(--paac-tone-warning-bg);
    color: var(--paac-tone-warning-text);
}

.page-registry-flag.subtle {
    background: var(--paac-chip-muted-bg);
    color: var(--paac-text-muted);
}

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

    .page-registry-cell,
    .page-registry-save {
        min-width: 220px;
    }
}

.modal-content {
    border: 1px solid var(--paac-card-border);
    border-radius: 18px;
    box-shadow: var(--paac-modal-shadow);
}
@media (min-width: 1200px) {
.modal-xl {
    max-width: 100%;
}
}

@media (min-width: 576px) {
    .modal-dialog-scrollable .modal-content {
        max-height: 100vh;
    }
}

.badge {
    border-radius: 999px;
    font-weight: 700;
    padding: 0.45em 0.7em;
}

footer.sticky-footer {
    background: var(--paac-footer-bg);
    backdrop-filter: blur(8px);
}

td h3,
td p,
td strong,
td ul,
td ul li {
    font-size: 1rem;
    font-weight: 300;
}

tfoot tr td {
    font-weight: bold;
}

.linkentry {
    margin: 10px;
    background-color: var(--paac-chip-muted-bg);
    border-radius: 0.25rem;
    min-width: calc(50% - 20px);
    display: flex;
    border: 1px solid var(--paac-border-medium);
}

.linkentrya {
    padding: 15px;
}

.linkentry p {
    margin-bottom: 5px;
}

.linkentry span {
    color: var(--paac-text-muted);
}

.dashboard h1 {
    font-size: 60px;
}

.dashboard h2 {
    font-size: 35px;
}

.modal-header .btn-close,
.modal-header .close {
    align-items: center;
    appearance: none;
    background: var(--paac-surface-subtle);
    border: 1px solid var(--paac-border-medium);
    border-radius: 999px;
    color: var(--paac-text-strong);
    display: inline-flex;
    font-size: .88rem;
    font-weight: 700;
    gap: .45rem;
    height: auto;
    line-height: 1;
    margin: 0;
    opacity: 1;
    padding: .48rem .82rem;
    text-shadow: none;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
    width: auto;
}

.modal-header .btn-close::before,
.modal-header .close::before {
    content: "Close";
}

.modal-header .btn-close::after,
.modal-header .close::after {
    content: "\00D7";
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
}

.modal-header .btn-close:hover,
.modal-header .btn-close:focus,
.modal-header .close:hover,
.modal-header .close:focus {
    background: var(--paac-surface-subtle-alt);
    border-color: var(--paac-border-strong);
    box-shadow: var(--paac-modal-close-ring);
    color: var(--paac-text-strong);
    opacity: 1;
    outline: none;
    text-decoration: none;
}

.modal-header .btn-close span,
.modal-header .close span {
    display: none;
}

form.search-form .form-group {
    margin-bottom: 0.25rem;
}

form.search-form .form-control {
    width: calc(100% - 42px);
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border-right: none;
}

form.search-form .btn.btn-inline {
    border: 1px solid var(--paac-form-border);
    top: 0px;
    padding: 4px 10px 2px 10px;
}

#editor1, #editor2, #editor3, #editor4 {
    position: absolute;
    width: calc(100% - 10px);
    height: 800px;
}

.table {
    font-weight: 500;
    color: var(--paac-text-strong);
}

.table-bordered, .table-bordered td, .table-bordered th {
    border: 1.5px solid var(--paac-card-header-border);
}


/* not needed with latest browsers
input[type="checkbox"] {
  transform: scale(3);
  -ms-transform: scale(3);
  -moz-transform: scale(3);
  -webkit-transform: scale(3);
  -o-transform: scale(3);
  padding: 20px;
  margin-top: 15px;
  max-width: 105px;
}
*/

/* ------------------- Default Style ------------------------- */

.gauge-container {
width: auto;
height: auto;
display: block;
/* float: left; */
padding: 10px;
overflow: hidden;
}

/* ------------------- Alternate Style ------------------------- */

.gauge-container.two {
height: auto;
border: 1px solid var(--paac-border-subtle);
}
.gauge-container.two > .gauge > .dial {
stroke: var(--paac-border-subtle);
stroke-width: 13;
}
.gauge-container.two > .gauge > .value {
stroke: var(--paac-orange);
stroke-dasharray: none;
stroke-width: 13;
}
.gauge-container.two text {
    fill: var(--paac-text-body);
    font-weight: bold;
    font-size: 0.6em;
}

/* Tooltip container */
.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
  }
  
  /* Tooltip text */
  .tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: var(--paac-text-strong);
    color: var(--paac-white);
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
   
    /* Position the tooltip text - see examples below! */
    position: absolute;
    z-index: 1;
  }
  
  /* Show the tooltip text when you mouse over the tooltip container */
  .tooltip:hover .tooltiptext {
    visibility: visible;
  }

/* tools css */

.tab-pane {
    padding-top: 15px;
}

.progress-bar-poor {
    background-color: var(--paac-tone-danger-accent);
}

.progress-bar-improvement {
    background-color: var(--paac-orange);
}

.progress-bar-good {
    background-color: var(--paac-lime);
}

.screenshot {
    margin: 10px;
    border: 1px solid var(--paac-text-strong);
    padding: 5px;
}

.screenshot p {
    margin-bottom: 5px;
}

.table {
    margin-bottom: 0px;
}

hr {
    border-top: 4px solid var(--paac-hr);
}

#validation div {
    margin-left: auto;
    margin-right: auto;
}

.info-block {
    padding: 10px;
}

.list-group-item.metric::before {
    content: '';
    width: 12px;
    height: 12px;
    display: inline-block;
    margin: 0 10px 0 0;
    border-radius: 100%;
}

.list-group-item.metric.metric-poor::before {
    background: var(--paac-tone-danger-accent);
}

.list-group-item.metric.metric-improvement::before {
    background: var(--paac-orange);
}

.list-group-item.metric.metric-good::before {
    background: var(--paac-lime);
}

.legend-div {
    border: 1px solid var(--paac-text-muted);
    border-radius: 1rem;
    padding: 10px;
    margin-bottom: 30px;
    width: 90%;
}

.legend.metric::before {
    content: '';
    width: 12px;
    height: 12px;
    display: inline-block;
    margin: 0 10px 0 0;
    border-radius: 100%;
}

.legend.metric.metric-poor::before {
    background: var(--paac-tone-danger-accent);
}

.legend.metric.metric-improvement::before {
    background: var(--paac-orange);
}

.legend.metric.metric-good::before {
    background: var(--paac-lime);
}

.form-select {
    display: block;
    width: 100%;
    padding: .375rem 2.25rem .375rem .75rem;
    -moz-padding-start: calc(0.75rem - 3px);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--paac-text-strong);
    background-color: var(--paac-white);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: 1px solid var(--paac-form-border);
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

pre,
.request-details {
    background-color: var(--paac-surface-soft);
    border: 1px solid var(--paac-border-medium);
    color: var(--paac-text-strong);
    padding: 10px 20px;
    margin: 20px;
}

.json-key {
    color: var(--paac-maroon);
}

.json-value {
    color: var(--paac-blue);
}

.json-string {
    color: var(--paac-lime);
}

.dashboard .table.dashboard-table thead th {
    font-size: 0.8em;
    text-align: center;
    padding: 5px;
}

.dashboard .table.dashboard-table tfoot td,
.dashboard .table.dashboard-table tfoot th {
    font-size: 0.8em;
    text-align: center;
}


/* end tools css */


.chat-box {
    padding: 1rem;
    border: 1px solid var(--paac-border-medium);
    border-radius: 14px;
    margin-bottom: 1.25rem;
    background: var(--paac-chat-surface);
    max-height: 600px;
    overflow-y: auto;
    box-shadow: var(--paac-shadow-soft);
}
.chat-box .user,
.chat-box .assistant {
    border: 1px solid transparent;
    border-radius: 12px;
    color: inherit;
    line-height: 1.55;
    margin-bottom: .9rem;
    overflow-wrap: anywhere;
    padding: .85rem 1rem;
}
.chat-box .user {
    background: var(--paac-chat-user-bg);
    border-color: var(--paac-chat-user-border);
    color: var(--paac-chat-user-text);
    margin-left: 8%;
}
.chat-box .assistant {
    background: var(--paac-chat-assistant-bg);
    border-color: var(--paac-chat-assistant-border);
    color: var(--paac-chat-assistant-text);
    margin-right: 8%;
}
.chat-box .user:last-child,
.chat-box .assistant:last-child {
    margin-bottom: 0;
}
.ai-canned-prompts {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}
.ai-canned-prompts .btn {
    margin: 0 !important;
}
.chat-box .user :is(h1, h2, h3, h4, h5, h6),
.chat-box .assistant :is(h1, h2, h3, h4, h5, h6),
.chat-box .user strong,
.chat-box .assistant strong {
    color: inherit;
}
@media (max-width: 575.98px) {
    .chat-box .user { margin-left: 3%; }
    .chat-box .assistant { margin-right: 3%; }
}

.project-sprint-report-table .project-sprint-row-cap-over > td {
    background: var(--paac-tone-danger-bg);
    color: var(--paac-tone-danger-text);
}

.project-sprint-report-table .project-sprint-row-cap-near > td {
    background: var(--paac-tone-warning-bg);
    color: var(--paac-tone-warning-text);
}

.project-sprint-report-table .project-sprint-row-cap-good > td {
    background: var(--paac-tone-success-bg);
    color: var(--paac-tone-success-text);
}

.project-sprint-report-table .project-sprint-row-cap-over > td:first-child {
    border-left: 4px solid var(--paac-tone-danger-border);
}

.project-sprint-report-table .project-sprint-row-cap-near > td:first-child {
    border-left: 4px solid var(--paac-tone-warning-border);
}

.project-sprint-report-table .project-sprint-row-cap-good > td:first-child {
    border-left: 4px solid var(--paac-tone-success-border);
}

.project-sprint-report-table .project-sprint-status {
    font-weight: 700;
}

.project-sprint-report-table .project-sprint-status-met {
    background: var(--paac-tone-success-bg) !important;
    color: var(--paac-tone-success-text) !important;
}

.project-sprint-report-table .project-sprint-status-missed {
    background: var(--paac-tone-danger-bg) !important;
    color: var(--paac-tone-danger-text) !important;
}

.project-sprint-report-table .project-sprint-status-progress {
    background: var(--paac-tone-warning-bg) !important;
    color: var(--paac-tone-warning-text) !important;
}

.service-points-podium {
    position: relative;
    overflow: hidden;
    padding: 2.25rem 1.5rem;
    border-radius: 1.5rem;
    background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-white) 100%);
    border: 1px solid var(--paac-border-medium);
    box-shadow: var(--paac-shadow-soft);
}

.service-points-podium.service-points-tier-gold {
    background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-gold) 100%);
    border-color: var(--paac-orange);
    box-shadow: inset 0 0 0 1px var(--paac-gold), var(--paac-shadow-soft);
}

.service-points-rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    padding: 0.45rem 0.95rem;
    border-radius: 999px;
    background: var(--paac-teal-deep);
    color: var(--paac-white);
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.service-points-rank.service-points-rank-gold {
    background: linear-gradient(135deg, var(--paac-orange) 0%, var(--paac-gold) 100%);
    color: var(--paac-text-strong);
}

.service-points-rank.service-points-tier-silver {
    background: linear-gradient(135deg, var(--paac-white) 0%, var(--paac-tone-neutral-border) 100%);
    border: 1px solid var(--paac-tone-neutral-accent);
    color: var(--paac-text-strong);
}

.service-points-rank.service-points-tier-bronze {
    background: linear-gradient(135deg, var(--paac-orange) 0%, var(--paac-maroon) 100%);
    border: 1px solid var(--paac-orange);
    color: var(--paac-white);
}

.service-points-name {
    margin-top: 1rem;
    margin-bottom: 0.35rem;
    font-size: 2.4rem;
    font-weight: 800;
    color: var(--paac-text-strong);
}

.service-points-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.85rem;
    margin-top: 1.5rem;
}

.service-points-stat {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: var(--paac-white);
    border: 1px solid var(--paac-border-medium);
    box-shadow: var(--paac-shadow-soft);
}

.service-points-podium.service-points-tier-gold .service-points-stat {
    background: var(--paac-white);
    border-color: var(--paac-orange);
}

.service-points-stat-label {
    display: block;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--paac-text-muted);
}

.service-points-stat-value {
    display: block;
    margin-top: 0.35rem;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--paac-text-strong);
}

.service-points-card {
    height: 100%;
    padding: 1.35rem 1.35rem 1.25rem;
    background: var(--paac-white);
    border: 1px solid var(--paac-border-medium);
    border-radius: 1.25rem;
    box-shadow: var(--paac-shadow-soft);
}

.service-points-card.service-points-card-top {
    background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-white) 100%);
}

.service-points-card.service-points-tier-silver {
    background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-surface-subtle-alt) 100%);
    border-color: var(--paac-tone-neutral-accent);
    box-shadow: inset 0 0 0 1px var(--paac-tone-neutral-accent), var(--paac-shadow-medium);
}

.service-points-card.service-points-tier-bronze {
    background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-tone-warning-bg) 100%);
    border-color: var(--paac-orange);
    box-shadow: inset 0 0 0 1px var(--paac-tone-warning-border), var(--paac-shadow-soft);
}

.service-points-card.service-points-tier-silver h4,
.service-points-card.service-points-tier-bronze h4 {
    color: var(--paac-text-strong);
}

.service-points-card.service-points-tier-silver h5 {
    color: var(--paac-text-strong);
}

.service-points-card.service-points-tier-bronze h5 {
    color: var(--paac-orange);
}

.service-points-card.service-points-tier-silver .service-points-mini-stat {
    background: var(--paac-white);
    border-color: var(--paac-tone-neutral-accent);
}

.service-points-card.service-points-tier-bronze .service-points-mini-stat {
    background: var(--paac-tone-warning-bg);
    border-color: var(--paac-orange);
}

.service-points-card.service-points-tier-silver .service-points-mini-stat strong {
    color: var(--paac-text-strong);
}

.service-points-card.service-points-tier-bronze .service-points-mini-stat strong {
    color: var(--paac-maroon);
}

.service-points-card h4 {
    margin: 0.85rem 0 0.25rem;
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--paac-text-strong);
}

.service-points-card h5 {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--paac-text-muted);
}

.service-points-mini-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: 1.2rem;
}

.service-points-mini-stat {
    padding: 0.8rem 0.7rem;
    border-radius: 0.95rem;
    background: var(--paac-surface-subtle);
    border: 1px solid var(--paac-border-soft);
    text-align: center;
}

.service-points-mini-stat strong {
    display: block;
    font-size: 1.1rem;
    color: var(--paac-text-strong);
}

.service-points-mini-stat span {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--paac-text-muted);
}

.service-points-section {
    padding: 1.5rem;
}

.service-points-toolbar {
    gap: 12px;
}

.service-points-filter-form {
    gap: 10px;
}

.service-points-filter-select {
    min-width: 170px;
}

.service-points-toolbar-actions {
    gap: 8px;
}

.service-points-canvas {
    width: 100%;
    height: 100%;
    pointer-events: none;
    position: absolute;
    inset: 0;
}

.service-points-podium-copy {
    font-size: 1.05rem;
    color: var(--paac-text-muted) !important;
}

@media (max-width: 767.98px) {
    .service-points-name {
        font-size: 2rem;
    }

    .service-points-mini-stats {
        grid-template-columns: 1fr;
    }

    .service-points-filter-form,
    .service-points-toolbar-actions {
        width: 100%;
    }

    .service-points-filter-select {
        min-width: 0;
        width: 100%;
    }
}

/* clive ai tech assist */
.shared-mailbox-message-list {
    display: grid;
    gap: .75rem;
}

.shared-mailbox-message {
    border: 1px solid #dce3ea;
    border-radius: .65rem;
    background: #fff;
    overflow: hidden;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.shared-mailbox-message[open] {
    border-color: #9ebce0;
    box-shadow: 0 .25rem .75rem rgba(34, 74, 120, .1);
}

.shared-mailbox-message-summary {
    display: grid;
    grid-template-columns: .65rem minmax(0, 1fr) auto;
    gap: .8rem;
    align-items: start;
    padding: 1rem;
    cursor: pointer;
    list-style: none;
}

.shared-mailbox-message-summary::-webkit-details-marker {
    display: none;
}

.shared-mailbox-message-state {
    width: .55rem;
    height: .55rem;
    margin-top: .4rem;
    border-radius: 50%;
    background: #adb5bd;
}

.shared-mailbox-message-unread .shared-mailbox-message-state {
    background: #2778c4;
    box-shadow: 0 0 0 .2rem rgba(39, 120, 196, .13);
}

.shared-mailbox-message-heading,
.shared-mailbox-message-meta {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.shared-mailbox-message-subject {
    color: #24364b;
    font-weight: 600;
}

.shared-mailbox-message-unread .shared-mailbox-message-subject {
    font-weight: 700;
}

.shared-mailbox-message-sender,
.shared-mailbox-message-preview,
.shared-mailbox-message-meta,
.shared-mailbox-message-addresses {
    color: #6c757d;
    font-size: .86rem;
}

.shared-mailbox-message-preview {
    margin-top: .35rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.shared-mailbox-message-meta {
    gap: .25rem;
    text-align: right;
    white-space: nowrap;
}

.shared-mailbox-message-toggle {
    color: #2778c4;
    font-weight: 600;
}

.shared-mailbox-message[open] .shared-mailbox-message-toggle {
    font-size: 0;
}

.shared-mailbox-message[open] .shared-mailbox-message-toggle::after {
    content: 'Hide message';
    font-size: .86rem;
}

.shared-mailbox-message-content {
    padding: 0 1rem 1rem 2.45rem;
}

.shared-mailbox-message-addresses {
    padding: .75rem;
    border-radius: .4rem;
    background: #f5f7fa;
    line-height: 1.55;
}

.shared-mailbox-message-body {
    margin-top: 1rem;
    color: #2f3b48;
    line-height: 1.55;
    overflow-wrap: anywhere;
    white-space: normal;
}

@media (max-width: 767.98px) {
    .shared-mailbox-message-summary {
        grid-template-columns: .65rem minmax(0, 1fr);
    }

    .shared-mailbox-message-meta {
        grid-column: 2;
        flex-direction: row;
        flex-wrap: wrap;
        gap: .25rem .75rem;
        text-align: left;
    }

    .shared-mailbox-message-content {
        padding-left: 1rem;
    }
}
    .ticket-detail-modal .modal-body,
    [id^="ticketDetailModal-"] .modal-body {
        background: #ffffff;
        display: block;
    }

    .ticket-detail-layout {
        align-items: start;
        display: grid;
        gap: .75rem 1rem;
        grid-template-columns: minmax(340px, 430px) minmax(0, 1fr);
    }

    .ticket-detail-left,
    .ticket-detail-right {
        display: grid;
        gap: 1.5rem;
        min-width: 0;
    }

    .ticket-detail-right {
        align-items: start;
        grid-template-columns: minmax(0, 1fr) 2.2rem;
    }

    .ticket-detail-right > .ticket-detail-panels,
    .ticket-detail-right > .ticket-workspace,
    .ticket-detail-right > .ticket-device-jobs-section,
    .ticket-detail-right > .ticket-activity-section {
        grid-column: 1;
    }

    .ticket-detail-section-nav {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: .45rem;
        grid-column: 2;
        grid-row: 1 / span 4;
        position: fixed;
        right: 3rem;
        top: 50vh;
        transform: translateY(-50%);
        z-index: 1060;
    }

    .ticket-section-jump {
        align-items: center;
        background: transparent;
        border: 0;
        color: var(--paac-text-muted);
        cursor: pointer;
        display: grid;
        gap: .22rem;
        justify-items: center;
        padding: .1rem 0;
    }

    .ticket-section-jump-line {
        background: var(--paac-border-strong);
        border-radius: 999px;
        display: block;
        height: 2.65rem;
        width: .22rem;
    }

    .ticket-section-jump-label {
        font-size: .62rem;
        font-weight: 800;
        line-height: 1;
        text-transform: uppercase;
        writing-mode: vertical-rl;
    }

    .ticket-section-jump:hover,
    .ticket-section-jump:focus,
    .ticket-section-jump.active {
        color: var(--paac-ink);
        outline: none;
    }

    .ticket-section-jump:hover .ticket-section-jump-line,
    .ticket-section-jump:focus .ticket-section-jump-line,
    .ticket-section-jump.active .ticket-section-jump-line {
        background: var(--paac-ink);
    }

    .ticket-detail-shell {
        display: grid;
        gap: .75rem;
    }

    .ticket-detail-modal-header {
        align-items: flex-start;
        background: #f6f8fb;
        border-bottom: 1px solid var(--paac-border-medium);
        gap: .75rem;
        padding-bottom: .75rem;
        padding-top: .75rem;
    }

    .ticket-detail-modal-summary {
        align-items: center;
        display: flex;
        flex: 1 1 520px;
        flex-wrap: wrap;
        gap: .75rem;
        min-width: 0;
    }

    .ticket-detail-modal-meta {
        flex: 1 1 320px;
        min-width: 0;
    }

    .ticket-detail-header-title {
        color: var(--paac-text-strong);
        font-size: .98rem;
        font-weight: 700;
        line-height: 1.25;
        margin-bottom: .18rem;
    }

    .ticket-detail-header-status {
        align-items: center;
        display: flex;
        flex: 0 1 auto;
        flex-wrap: wrap;
        gap: .45rem;
        min-width: 0;
    }

    .ticket-priority-pill {
        align-items: center;
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-strong);
        display: inline-flex;
        gap: .45rem;
        min-height: 28px;
        padding: .28rem .55rem;
    }

    .ticket-priority-pill .ticket-detail-stat-label {
        font-size: .66rem;
        margin: 0;
    }

    .ticket-priority-pill.ticket-priority-low {
        background: var(--paac-tone-neutral-bg);
        border-color: var(--paac-tone-neutral-border);
    }

    .ticket-priority-pill.ticket-priority-medium {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
    }

    .ticket-priority-pill.ticket-priority-high {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
    }

    .ticket-priority-pill.ticket-priority-critical {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
    }

    .ticket-view-timer {
        align-items: center;
        background: var(--paac-tone-warning-bg);
        border: 1px solid var(--paac-tone-warning-border);
        border-radius: 4px;
        color: var(--paac-tone-warning-text);
        display: grid;
        flex: 0 0 auto;
        gap: .1rem;
        justify-items: center;
        min-width: 104px;
        padding: .35rem .55rem;
        text-align: center;
    }

    .ticket-view-timer-label,
    .ticket-view-timer-suggestion {
        font-size: .72rem;
        font-weight: 800;
        line-height: 1.1;
        text-transform: uppercase;
    }

    .ticket-view-timer-value {
        font-family: "Courier New", monospace;
        font-size: 1.15rem;
        font-weight: 800;
        line-height: 1.05;
    }

    .ticket-view-timer-suggestion {
        opacity: .82;
    }

    .ticket-view-timer.is-warning {
        box-shadow: 0 0 0 3px rgba(246, 194, 62, .18);
    }

    .ticket-view-timer.is-danger {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        box-shadow: 0 0 0 3px rgba(231, 74, 59, .16);
        color: var(--paac-tone-danger-text);
    }

    .ticket-detail-modal-actions {
        align-items: flex-start;
        display: flex;
        flex: 0 1 auto;
        flex-wrap: wrap;
        gap: .45rem;
        justify-content: flex-end;
        margin-left: auto;
        min-width: 0;
    }

    .ticket-detail-modal-action-buttons {
        display: flex;
        flex-wrap: wrap;
        gap: .4rem;
        justify-content: flex-end;
        min-width: 0;
    }

    .ticket-detail-modal-action-buttons > .btn,
    .ticket-detail-modal-action-buttons > a {
        margin: 0 !important;
    }

    .ticket-detail-close {
        background: transparent;
        border: 0;
        color: var(--paac-text-muted);
        flex: 0 0 auto;
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1;
        margin: 0;
        padding: .15rem .25rem;
    }

    .ticket-detail-close:hover,
    .ticket-detail-close:focus {
        color: var(--paac-text-strong);
        outline: none;
    }

    .ticket-detail-close span {
        display: block;
        line-height: 1;
    }

    .ticket-detail-close-mobile {
        display: none !important;
    }

    .ticket-detail-close-desktop {
        display: block !important;
    }

    .ticket-detail-modal-actions .btn-close {
        flex: 0 0 auto;
        margin: 0;
    }

    .ticket-detail-mobile-actions-toggle {
        align-items: center;
        background: transparent;
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-muted);
        display: none;
        height: 2rem;
        justify-content: center;
        padding: 0;
        width: 2rem;
    }

    .ticket-detail-mobile-actions-toggle:hover,
    .ticket-detail-mobile-actions-toggle:focus {
        color: var(--paac-text-strong);
        outline: none;
    }

    .ticket-detail-mobile-actions-toggle i {
        transition: transform .16s ease;
    }

    .ticket-detail-modal.ticket-detail-actions-expanded .ticket-detail-mobile-actions-toggle i,
    [id^="ticketDetailModal-"].ticket-detail-actions-expanded .ticket-detail-mobile-actions-toggle i {
        transform: rotate(180deg);
    }

    .ticket-admin-link-btn {
        min-width: 2.15rem;
        padding-left: .7rem;
        padding-right: .7rem;
    }

    .ticket-admin-links-collapse,
    .ticket-admin-links-collapse.collapsing,
    .ticket-admin-links-collapse.show,
    .ticket-actions-collapse,
    .ticket-actions-collapse.collapsing,
    .ticket-actions-collapse.show {
        grid-area: admin;
        left: 50%;
        max-width: min(920px, calc(100vw - 2rem));
        position: fixed;
        top: 5.5rem;
        transform: translateX(-50%);
        width: calc(100vw - 2rem);
        z-index: 1065;
    }

    .ticket-admin-links-collapse.collapsing,
    .ticket-actions-collapse.collapsing {
        display: block;
        height: auto !important;
        overflow: visible !important;
        transition: none !important;
    }

    .ticket-admin-links-collapse:not(.show):not(.collapsing),
    .ticket-actions-collapse:not(.show):not(.collapsing) {
        display: none;
    }

    .ticket-detail-shell > .ticket-admin-links-collapse:not(.collapsing),
    .ticket-detail-shell > .ticket-admin-links-collapse.show,
    .ticket-detail-shell > .ticket-actions-collapse:not(.collapsing),
    .ticket-detail-shell > .ticket-actions-collapse.show {
        grid-column: 1 / -1;
    }

    .ticket-admin-links-panel {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-strong);
        border-radius: 6px;
        box-shadow: 0 14px 32px rgba(12, 35, 51, 0.18);
        margin-bottom: 1rem;
        max-height: none;
        overflow: visible;
        padding: 1rem;
    }

    .ticket-admin-links-heading {
        color: var(--paac-tone-info-accent);
        font-size: .76rem;
        font-weight: 700;
        letter-spacing: .06em;
        margin-bottom: .75rem;
        text-transform: uppercase;
    }

    .ticket-admin-links-grid {
        display: grid;
        gap: .65rem;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }

    .ticket-admin-links-item {
        align-items: center;
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-strong);
        display: inline-flex;
        font-size: .92rem;
        font-weight: 600;
        flex-wrap: wrap;
        gap: .55rem;
        min-height: 42px;
        padding: .7rem .85rem;
        text-decoration: none;
    }

    .ticket-admin-links-item:hover,
    .ticket-admin-links-item:focus {
        background: var(--paac-tone-info-bg);
        border-color: var(--paac-tone-info-border);
        color: var(--paac-text-strong);
        text-decoration: none;
    }

    .ticket-actions-panel-button {
        cursor: pointer;
        font-family: inherit;
        text-align: left;
        width: 100%;
    }

    .ticket-tools-dialog {
        max-width: min(1180px, calc(100vw - 1.5rem));
    }

    .ticket-tools-body {
        display: grid;
        gap: 1rem;
        grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
        min-height: min(72vh, 760px);
    }

    .ticket-tools-picker {
        border-right: 1px solid var(--paac-border-medium);
        min-width: 0;
        padding-right: 1rem;
    }

    .ticket-tools-list {
        max-height: calc(72vh - 92px);
        overflow: auto;
        padding-right: .25rem;
    }

    .ticket-tools-group + .ticket-tools-group {
        margin-top: .9rem;
    }

    .ticket-tools-group-title {
        color: var(--paac-tone-info-accent);
        font-size: .72rem;
        font-weight: 800;
        letter-spacing: .05em;
        margin-bottom: .4rem;
        text-transform: uppercase;
    }

    .ticket-tools-item {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-strong);
        cursor: pointer;
        display: block;
        font-family: inherit;
        margin-bottom: .4rem;
        padding: .55rem .65rem;
        text-align: left;
        width: 100%;
    }

    .ticket-tools-item:hover,
    .ticket-tools-item:focus,
    .ticket-tools-item.active {
        background: var(--paac-tone-info-bg);
        border-color: var(--paac-tone-info-border);
        outline: none;
    }

    .ticket-tools-item-name {
        display: block;
        font-size: .9rem;
        font-weight: 700;
        line-height: 1.2;
    }

    .ticket-tools-item-page {
        color: var(--paac-text-muted);
        display: block;
        font-size: .74rem;
        line-height: 1.2;
        margin-top: .2rem;
        overflow-wrap: anywhere;
    }

    .ticket-tools-runner {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 6px;
        min-height: 0;
        overflow: hidden;
        position: relative;
    }

    .ticket-tools-empty {
        align-items: center;
        color: var(--paac-text-muted);
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: center;
        min-height: 360px;
        padding: 2rem;
        text-align: center;
    }

    .ticket-tools-frame {
        background: var(--paac-white);
        border: 0;
        display: block;
        height: min(72vh, 760px);
        width: 100%;
    }

    .ticket-admin-links-item-disabled,
    .ticket-admin-links-item[aria-disabled="true"] {
        cursor: not-allowed;
        opacity: .7;
        pointer-events: none;
    }

    .ticket-admin-links-icon {
        align-items: center;
        background: var(--paac-surface-subtle-alt);
        border-radius: 4px;
        color: var(--paac-tone-info-text);
        display: inline-flex;
        height: 1.9rem;
        justify-content: center;
        width: 1.9rem;
    }

    .ticket-admin-links-icon-image {
        display: block;
        height: 1rem;
        max-width: 1rem;
        object-fit: contain;
    }

    .ticket-admin-links-label {
        flex: 1 1 auto;
        min-width: 0;
    }

    .ticket-admin-links-status {
        color: var(--paac-text-muted);
        display: block;
        flex: 0 0 100%;
        font-size: .78rem;
        font-weight: 500;
        margin-left: 2.45rem;
        margin-top: -1.1rem;
        white-space: normal;
    }

    .ticket-detail-hero {
        background: #f7fbff;
        border: 1px solid var(--paac-border-medium);
        border-left: 4px solid var(--paac-tone-info-accent);
        border-radius: 4px;
        padding: .75rem .9rem;
    }

    .ticket-detail-eyebrow {
        color: var(--paac-tone-info-accent);
        letter-spacing: .04em;
        text-transform: uppercase;
        font-size: .68rem;
        font-weight: 700;
        margin-bottom: .2rem;
    }

    .ticket-detail-title {
        font-size: 1rem;
        font-weight: 700;
        color: var(--paac-ink);
        margin-bottom: .35rem;
    }

    .ticket-detail-subtitle {
        color: var(--paac-text-muted);
        margin-bottom: 0;
    }

    .ticket-detail-statgrid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
        gap: .45rem;
    }

    .ticket-detail-stat {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        min-height: 62px;
        padding: .55rem .65rem;
    }

    .ticket-detail-stat.ticket-priority-low {
        background: var(--paac-tone-neutral-bg);
        border-color: var(--paac-tone-neutral-border);
    }

    .ticket-detail-stat.ticket-priority-medium {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
    }

    .ticket-detail-stat.ticket-priority-high {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
    }

    .ticket-detail-stat.ticket-priority-critical {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
    }

    .ticket-detail-stat.is-time-warning {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        box-shadow: var(--paac-tone-warning-ring);
    }

    .ticket-detail-stat.is-time-danger,
    .scorecard-kpi.is-time-danger {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        box-shadow: var(--paac-tone-danger-ring);
    }

    .ticket-detail-stat-label {
        font-size: .66rem;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: var(--paac-text-muted);
        margin-bottom: .3rem;
    }

    .ticket-detail-stat-value {
        font-size: .92rem;
        font-weight: 700;
        color: var(--paac-text-strong);
        line-height: 1.2;
    }

    .ticket-detail-stat .ticket-field-editor-trigger,
    .ticket-detail-stat .ticket-status-value {
        max-width: 100%;
        min-width: 0;
    }

    .ticket-detail-stat .workflow-status-badge {
        justify-content: center;
        line-height: 1.15;
        max-width: 100%;
        overflow-wrap: anywhere;
        text-align: center;
        white-space: normal;
    }

    .ticket-detail-panels {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .ticket-detail-shell {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .ticket-detail-panels > .row {
        display: block;
        width: 100%;
        max-width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .ticket-detail-panels > .row > [class*="col-"] {
        flex: none;
        margin-bottom: .75rem !important;
        max-width: none;
        min-width: 0;
        padding-left: .38rem;
        padding-right: .38rem;
        width: auto;
    }

    .ticket-detail-right .ticket-detail-panels > .row > [class*="col-"] {
        margin-bottom: 0 !important;
        padding-left: 0;
        padding-right: 0;
    }

    .ticket-detail-panels > .row > [class*="col-"]:nth-child(1) {
        grid-area: auto;
    }

    .ticket-detail-panels > .row > [class*="col-"]:nth-child(2) {
        grid-area: auto;
    }

    .ticket-detail-panels > .row > [class*="col-"]:nth-child(3) {
        grid-area: auto;
    }

    .ticket-detail-panels > .row > [class*="col-"]:nth-child(4) {
        grid-area: auto;
    }

    .ticket-detail-panels > .row > [class*="col-"]:nth-child(5) {
        grid-area: auto;
    }

    .ticket-detail-panel {
        background: #f6f8fb;
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        padding: .8rem;
    }

    .ticket-detail-meta-grid {
        display: grid;
        gap: .5rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-bottom: 1rem;
    }

    .ticket-detail-meta-card {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        min-width: 0;
        padding: .55rem .65rem;
    }

    .ticket-detail-meta-card-wide {
        grid-column: 1 / -1;
    }

    .ticket-detail-meta-label,
    .ticket-detail-section-label {
        color: var(--paac-text-muted);
        font-size: .7rem;
        font-weight: 700;
        letter-spacing: .04em;
        margin-bottom: .28rem;
    }

    .ticket-detail-meta-value {
        color: var(--paac-text-strong);
        font-size: .9rem;
        font-weight: 600;
        line-height: 1.35;
        word-break: break-word;
    }

    .ticket-detail-description-wrap {
        display: grid;
        gap: .4rem;
    }

    .ticket-detail-description {
        background: var(--paac-white);
        border-radius: 4px;
        border: 1px solid var(--paac-border-medium);
        color: var(--paac-text-muted);
        line-height: 1.5;
        min-height: 0;
        overflow: visible;
        padding: .8rem .9rem;
        resize: none;
        white-space: pre-wrap;
    }

    .ticket-detail-description-hint {
        color: var(--paac-text-muted);
        font-size: .78rem;
        opacity: .72;
    }

    .ticket-merge-option-wrap {
        transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
    }

    .ticket-merge-option-wrap.ticket-merge-option-selected {
        background: #fff8df;
        border-color: #f6c23e !important;
        box-shadow: 0 0 0 .18rem rgba(246, 194, 62, .28);
    }

    .ticket-merge-option-wrap.ticket-merge-option-selected .ticket-merge-selected-badge {
        display: inline-block !important;
        margin-left: .35rem;
        vertical-align: text-bottom;
    }

    .ticket-merge-option-wrap.ticket-merge-option-selected .ticket-merge-selected-note {
        display: block !important;
    }

    .ticket-activity-list {
        overflow: visible;
        padding-right: 0;
    }

    .ticket-activity-item {
        background: var(--paac-white);
        border: 1px solid var(--paac-teal-deep);
        border-left: 3px solid var(--paac-teal-deep);
        border-radius: 4px;
        margin-bottom: .55rem;
        padding: .7rem .85rem;
        color: var(--paac-text-strong);
        line-height: 1.45;
        white-space: normal;
        word-break: break-word;
    }

    .ticket-activity-item-meta {
        color: var(--paac-teal-deep);
        font-size: .76rem;
        font-weight: 700;
        letter-spacing: .02em;
        margin-bottom: .38rem;
        text-transform: uppercase;
    }

    .ticket-activity-item-body {
        color: var(--paac-text-muted);
        font-size: .92rem;
        white-space: pre-wrap;
    }

    .ticket-detail-description img,
    .ticket-activity-item-body img,
    .ticket-clickable-image {
        cursor: zoom-in;
    }

    body.ticket-image-viewer-open {
        overflow: hidden;
    }

    .ticket-image-viewer {
        align-items: center;
        background: rgba(10, 18, 25, .92);
        bottom: 0;
        display: flex;
        flex-direction: column;
        gap: .75rem;
        left: 0;
        padding: 1rem;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 3000;
    }

    .ticket-image-viewer.d-none {
        display: none !important;
    }

    .ticket-image-viewer-toolbar {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: .45rem;
        justify-content: center;
        width: 100%;
    }

    .ticket-image-viewer-control {
        align-items: center;
        background: rgba(255, 255, 255, .94);
        border: 1px solid rgba(255, 255, 255, .24);
        border-radius: 4px;
        color: #16212b;
        display: inline-flex;
        height: 2.2rem;
        justify-content: center;
        min-width: 2.2rem;
        padding: 0 .65rem;
        text-decoration: none;
    }

    .ticket-image-viewer-control:hover,
    .ticket-image-viewer-control:focus {
        background: #ffffff;
        color: #0b5d6e;
        outline: none;
        text-decoration: none;
    }

    .ticket-image-viewer-stage {
        align-items: center;
        cursor: zoom-out;
        display: flex;
        flex: 1 1 auto;
        justify-content: center;
        min-height: 0;
        overflow: hidden;
        width: 100%;
    }

    .ticket-image-viewer-img {
        max-height: 100%;
        max-width: 100%;
        object-fit: contain;
        transform-origin: center center;
        user-select: none;
        will-change: transform;
    }

    .ticket-image-viewer-caption {
        color: rgba(255, 255, 255, .82);
        font-size: .86rem;
        max-width: min(980px, 100%);
        overflow: hidden;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .ticket-activity-item-preview {
        color: var(--paac-text-muted);
        font-size: .93rem;
        line-height: 1.45;
    }

    .ticket-activity-item.is-customer-note {
        background: var(--paac-tone-info-bg);
        border-color: var(--paac-tone-info-border);
    }

    .ticket-activity-item-meta.is-customer-note {
        color: var(--paac-tone-info-text);
    }

    .ticket-activity-item-details {
        margin-top: .55rem;
    }

    .ticket-activity-item-details summary {
        color: var(--paac-teal-deep);
        cursor: pointer;
        font-size: .8rem;
        font-weight: 700;
        outline: none;
        text-transform: uppercase;
    }

    .ticket-activity-item-details[open] summary {
        margin-bottom: .55rem;
    }

    .ticket-device-jobs-list {
        display: flex;
        flex-direction: column;
        gap: .55rem;
    }

    .ticket-device-job-item {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-left: 3px solid var(--paac-teal-deep);
        border-radius: 4px;
        color: var(--paac-text-muted);
        padding: .75rem .85rem;
    }

    .ticket-device-job-top {
        align-items: flex-start;
        display: flex;
        gap: .75rem;
        justify-content: space-between;
    }

    .ticket-device-job-main {
        min-width: 0;
    }

    .ticket-device-job-title {
        color: var(--paac-text-strong);
        font-weight: 700;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }

    .ticket-device-job-meta,
    .ticket-device-job-summary {
        color: var(--paac-text-muted);
        font-size: .82rem;
        line-height: 1.45;
        margin-top: .25rem;
        white-space: pre-wrap;
    }

    .ticket-device-job-status {
        border: 1px solid var(--paac-border-medium);
        border-radius: 999px;
        flex: 0 0 auto;
        font-size: .72rem;
        font-weight: 800;
        line-height: 1;
        max-width: 46%;
        overflow-wrap: anywhere;
        padding: .32rem .52rem;
        text-align: right;
    }

    .ticket-device-job-status.is-success {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
        color: var(--paac-tone-success-text);
    }

    .ticket-device-job-status.is-warning {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        color: var(--paac-tone-warning-text);
    }

    .ticket-device-job-status.is-danger {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        color: var(--paac-tone-danger-text);
    }

    .ticket-device-job-status.is-neutral {
        background: var(--paac-surface-subtle-alt);
        border-color: var(--paac-border-strong);
        color: var(--paac-text-muted);
    }

    .ticket-device-job-details {
        margin-top: .55rem;
    }

    .ticket-device-job-details summary {
        color: var(--paac-teal-deep);
        cursor: pointer;
        font-size: .78rem;
        font-weight: 800;
        outline: none;
        text-transform: uppercase;
    }

    .ticket-device-job-details[open] summary {
        margin-bottom: .55rem;
    }

    .ticket-device-job-details-body {
        display: grid;
        gap: .55rem;
    }

    .ticket-device-job-detail-label {
        color: var(--paac-text-strong);
        font-size: .76rem;
        font-weight: 800;
        margin-bottom: .2rem;
        text-transform: uppercase;
    }

    .ticket-device-job-detail-text,
    .ticket-device-job-pre {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-muted);
        font-size: .78rem;
        line-height: 1.45;
        margin: 0;
        max-height: 320px;
        overflow: auto;
        padding: .55rem .65rem;
        white-space: pre-wrap;
        word-break: break-word;
    }

    .ticket-checklist-list {
        display: flex;
        flex-direction: column;
        gap: .3rem;
    }

    .ticket-checklist-item {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        padding: .2rem .95rem;
    }

    .ticket-checklist-item.is-completed .ticket-checklist-title {
        text-decoration: line-through;
        opacity: .75;
    }

    .ticket-checklist-title {
        font-weight: 600;
        color: var(--paac-text-strong);
        padding-right: .75rem;
        line-height: 1.35;
    }

    .ticket-checklist-detail {
        margin-top: .3rem;
        color: var(--paac-text-muted);
        white-space: pre-wrap;
    }

    .ticket-checklist-meta,
    .ticket-checklist-meta-inline {
        color: var(--paac-text-muted);
        font-size: .82rem;
        font-style: italic;
        font-weight: 400;
    }

    .ticket-checklist-meta-inline {
        display: inline;
        white-space: normal;
    }

    .ticket-checklist-item.is-important {
        border-color: var(--paac-tone-warning-border);
        box-shadow: inset 0 0 0 1px var(--paac-tone-warning-border);
    }

    .ticket-checklist-status.badge-light {
        background: var(--paac-surface-subtle-alt);
        color: var(--paac-text-muted);
        border: 1px solid var(--paac-border-strong);
    }

    .ticket-checklist-toggle-completed {
        font-size: .85rem;
    }

    .ticket-company-projects-list {
        display: flex;
        flex-direction: column;
        gap: .3rem;
    }

    .ticket-company-project-progress {
        flex: 0 0 180px;
        width: 180px;
        max-width: 100%;
    }

    .ticket-config-panel,
    .ticket-device-overview {
        background: var(--paac-surface-subtle);
        border-color: var(--paac-border-medium);
        color: var(--paac-text-muted);
    }

    .ticket-detail-panel.ticket-config-panel {
        background: var(--paac-surface-subtle);
        background-image: none;
        color: var(--paac-text-muted);
    }

    .ticket-detail-panels .ticket-detail-panel.ticket-config-panel {
        background: var(--paac-surface-subtle);
        background-image: none;
    }

    .ticket-config-panel.is-warning {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        box-shadow: var(--paac-tone-warning-ring);
    }

    .ticket-config-panel h5,
    .ticket-config-panel label,
    .ticket-config-panel .ticket-config-empty,
    .ticket-config-panel .ticket-config-search-hint,
    .ticket-config-panel .ticket-config-disabled-message {
        color: var(--paac-text-muted);
    }

    .ticket-config-panel .text-muted,
    .ticket-device-overview .text-muted {
        color: var(--paac-text-muted) !important;
    }

    .ticket-config-search-shell,
    .ticket-config-search-results,
    .ticket-client-context-results,
    .ticket-evidence-results {
        color: var(--paac-text-muted);
    }

    .ticket-config-search-results .border,
    .ticket-config-search-results .rounded,
    .ticket-config-list .border,
    .ticket-config-list .rounded {
        border-color: var(--paac-border-medium) !important;
    }

    .ticket-status-bubble {
        background: var(--paac-tone-neutral-accent);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        display: inline-block;
        height: 10px;
        margin-right: 8px;
        width: 10px;
    }

    .ticket-status-bubble.is-online {
        background: var(--paac-lime);
    }

    .ticket-status-bubble.is-offline {
        background: var(--paac-tone-neutral-border);
    }

    .ticket-device-overview .text-danger {
        color: var(--paac-tone-danger-accent) !important;
    }

    .ticket-device-overview .bg-light,
    .ticket-evidence-results > .border.rounded {
        background: var(--paac-white) !important;
        border-color: var(--paac-border-medium) !important;
        color: var(--paac-text-muted);
    }

    .ticket-device-overview .bg-warning {
        background: var(--paac-tone-warning-border) !important;
    }

    .ticket-device-overview .bg-danger {
        background: var(--paac-tone-danger-border) !important;
    }

    .ticket-device-overview .progress {
        background: var(--paac-surface-subtle-alt);
    }

    .ticket-client-context-shell,
    .ticket-evidence-shell {
        background: var(--paac-surface-subtle) !important;
        border-color: var(--paac-border-medium) !important;
        color: var(--paac-text-muted);
    }

    .ticket-chat-context-grid {
        display: grid;
        gap: .75rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-bottom: .75rem;
    }

    .ticket-chat-context-grid .ticket-client-context-shell,
    .ticket-chat-context-grid .ticket-evidence-shell {
        margin-bottom: 0 !important;
    }

    .ticket-client-context-shell .text-muted,
    .ticket-evidence-shell .text-muted {
        color: var(--paac-text-muted) !important;
    }

    .ticket-evidence-results .badge-light,
    .ticket-evidence-results .badge.badge-pill.badge-light {
        background: var(--paac-surface-subtle-alt);
        border-color: var(--paac-border-strong);
        color: var(--paac-text-muted);
    }

    .workflow-booking-badge {
        background: var(--paac-tone-info-bg);
        border: 1px solid var(--paac-tone-info-border);
        border-radius: 999px;
        color: var(--paac-tone-info-text);
        display: inline-flex;
        font-size: 0.76rem;
        font-weight: 700;
        line-height: 1;
        padding: .34rem .62rem;
        white-space: nowrap;
    }

    .workflow-booking-badge.is-current {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
        color: var(--paac-tone-success-text);
    }

    .ticket-chat-thread {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 4px;
        color: var(--paac-text-muted);
        margin-bottom: .75rem;
        max-height: min(32rem, calc(100vh - 14rem));
        max-height: min(32rem, calc(100dvh - 14rem));
        overscroll-behavior: contain;
        overflow-x: hidden;
        overflow-y: auto;
        padding: .75rem .85rem;
    }

    .ticket-chat-thread p:last-child {
        margin-bottom: 0 !important;
    }

    .workflow-main-tabs {
        display: flex;
        flex-wrap: wrap;
        gap: .6rem;
        margin-bottom: 1rem;
    }

    .workflow-main-tab {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        font-size: .9rem;
        font-weight: 700;
        padding: .55rem 1rem;
    }

    .workflow-main-tab.active {
        background: var(--paac-ink);
        border-color: var(--paac-ink);
        color: var(--paac-white);
    }

    .workflow-main-panel {
        display: none;
    }

    .workflow-main-panel.active {
        display: block;
    }

    .ticket-workspace {
        border-top: 0;
        margin-top: 0;
        padding-top: 0;
    }

    .ticket-detail-panel,
    .ticket-activity-section {
        border-top: 3px solid var(--paac-tone-neutral-accent);
    }

    .ticket-workspace-heading {
        margin-bottom: .65rem;
    }

    .ticket-workspace-tabs,
    .ticket-note-type-tabs {
        display: flex;
        flex-wrap: wrap;
        gap: .35rem;
        margin-bottom: .75rem;
    }

    .ticket-workspace-tab,
    .ticket-note-type-tab {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 4px;
        color: var(--paac-text-muted);
        font-size: .82rem;
        font-weight: 700;
        padding: .42rem .7rem;
    }

    .ticket-workspace-tab.active,
    .ticket-note-type-tab.active {
        background: var(--paac-ink);
        border-color: var(--paac-ink);
        color: var(--paac-white);
    }

    .ticket-workspace-panel,
    .ticket-note-type-panel {
        display: none;
    }

    .ticket-workspace-panel.active,
    .ticket-note-type-panel.active {
        display: block;
    }

    .ticket-note-generator {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-soft);
        border-radius: 4px;
        padding: .85rem;
    }

    .ticket-note-form-grid {
        display: grid;
        gap: .85rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ticket-note-output-shell {
        border-top: 1px solid var(--paac-border-soft);
        margin-top: 1rem;
        padding-top: 1rem;
    }

    .ticket-note-output {
        min-height: 150px;
        resize: vertical;
    }

    .workflow-metric-toolbar {
        display: flex;
        flex-wrap: wrap;
        gap: .6rem;
        align-items: center;
        margin-bottom: 1rem;
    }

    .workflow-metric-toolbar-label {
        color: var(--paac-text-muted);
        font-size: .9rem;
        font-weight: 600;
        margin-left: .2rem;
    }

    .workflow-metric-status-grid {
        display: grid;
        gap: .9rem;
        grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    }

    .workflow-metric-status-card {
        background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-surface-subtle) 100%);
        border: 1px solid var(--paac-border-medium);
        border-radius: 16px;
        color: var(--paac-text-strong);
        display: grid;
        gap: .35rem;
        padding: 1rem;
        text-align: left;
        transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }

    .workflow-metric-status-card:hover,
    .workflow-metric-status-card:focus {
        background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-surface-subtle) 100%);
        border-color: var(--paac-tone-info-border);
        box-shadow: var(--paac-shadow-medium);
        outline: none;
        transform: translateY(-1px);
    }

    .workflow-metric-status-card-label {
        font-size: .92rem;
        font-weight: 700;
    }

    .workflow-metric-status-card-count {
        color: var(--paac-tone-info-accent);
        font-size: 1.8rem;
        font-weight: 800;
        line-height: 1;
    }

    .workflow-metric-status-card-meta {
        color: var(--paac-text-muted);
        font-size: .82rem;
        font-weight: 600;
    }

    #workflowTicketSearchCompanyResults {
        background: var(--paac-white);
        border-color: var(--paac-border-medium) !important;
    }

    .workflow-ticket-search-company-option {
        color: var(--paac-text-muted);
    }

    .workflow-ticket-search-company-option:hover,
    .workflow-ticket-search-company-option:focus {
        background: var(--paac-tone-info-bg);
        color: var(--paac-text-strong);
        text-decoration: none;
    }

    #workflowTicketSearchResults .bg-light,
    #workflowTicketSearchModal .bg-light {
        background: var(--paac-white) !important;
        border-color: var(--paac-border-medium) !important;
        color: var(--paac-text-muted);
    }

    #workflowTicketSearchResults .bg-light p,
    #workflowTicketSearchModal .bg-light p {
        color: var(--paac-text-muted);
    }

    .ticket-note-customer-whatsapp-help {
        flex: 0 0 100%;
        margin-bottom: .55rem;
    }

    .ticket-note-customer-whatsapp-help-text {
        color: var(--paac-text-muted);
        font-size: .96rem;
        font-weight: 600;
        line-height: 1.35;
    }

    .ticket-note-post-actions .ticket-note-status-controls,
    .ticket-note-post-actions .ticket-note-queue-controls,
    .ticket-note-post-actions .ticket-note-customer-notify-controls,
    .ticket-note-post-actions .ticket-note-post-customer {
        margin-bottom: 0.35rem !important;
    }

    .ticket-note-post-actions .ticket-note-status-controls,
    .ticket-note-post-actions .ticket-note-queue-controls {
        flex: 0 0 260px;
        max-width: 260px;
    }

    .ticket-note-time-entry-head {
        align-items: baseline;
        display: flex;
        gap: .45rem;
        justify-content: space-between;
        margin-bottom: .25rem;
    }

    .ticket-note-time-suggestion {
        color: var(--paac-text-muted);
        font-size: .72rem;
        font-weight: 700;
        line-height: 1;
        text-align: right;
        white-space: nowrap;
    }

    .ticket-note-post-actions .ticket-note-customer-notify-controls {
        flex: 0 0 220px;
        max-width: 220px;
    }

    .ticket-note-post-actions .ticket-note-post-customer {
        align-self: flex-end;
    }

    .ticket-note-email-recipient-controls {
        flex: 0 0 100%;
        margin-bottom: .6rem;
    }

    .ticket-note-email-recipient-chips {
        display: flex;
        flex-wrap: wrap;
        gap: .35rem;
        margin-bottom: .45rem;
    }

    .ticket-note-email-recipient-chip {
        align-items: center;
        background: var(--paac-tone-info-bg);
        border: 1px solid var(--paac-tone-info-border);
        border-radius: 999px;
        color: var(--paac-text-strong);
        display: inline-flex;
        font-size: .82rem;
        font-weight: 700;
        gap: .35rem;
        line-height: 1.2;
        max-width: 100%;
        padding: .28rem .45rem;
    }

    .ticket-note-email-recipient-remove {
        background: transparent;
        border: 0;
        color: inherit;
        font-weight: 800;
        line-height: 1;
        padding: 0 .1rem;
    }

    .ticket-note-email-contact-results {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 6px;
        box-shadow: var(--paac-shadow-small);
        margin-top: .25rem;
        max-height: 180px;
        overflow-y: auto;
    }

    .ticket-note-email-contact-option {
        background: transparent;
        border: 0;
        color: var(--paac-text-strong);
        display: block;
        font-size: .88rem;
        padding: .45rem .6rem;
        text-align: left;
        width: 100%;
    }

    .ticket-note-email-contact-option:hover,
    .ticket-note-email-contact-option:focus {
        background: var(--paac-tone-info-bg);
        outline: none;
    }

    @media (max-width: 767.98px) {
        .ticket-note-post-actions .ticket-note-status-controls,
        .ticket-note-post-actions .ticket-note-queue-controls,
        .ticket-note-post-actions .ticket-note-customer-notify-controls,
        .ticket-note-post-actions .ticket-note-post-customer {
            flex: 0 0 100%;
            max-width: 100%;
        }

        .ticket-note-post-actions .ticket-note-post-customer {
            align-self: stretch;
        }
    }

    .workflow-sprint-grid {
        align-items: start;
        display: grid;
        gap: 1.35rem;
        grid-template-columns: 1fr;
        justify-content: start;
    }

    .workflow-sprint-modal .modal-body {
        padding-bottom: 2.25rem;
    }

    .workflow-sprint-filter-bar {
        align-items: center;
        display: flex;
        justify-content: flex-end;
        margin: -.45rem 0 1rem;
    }

    .workflow-sprint-toggle-met {
        align-items: center;
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 8px;
        color: var(--paac-text-muted);
        cursor: pointer;
        display: inline-flex;
        font-size: .84rem;
        font-weight: 700;
        gap: .45rem;
        line-height: 1;
        padding: .55rem .7rem;
    }

    .workflow-sprint-toggle-met input {
        margin: 0;
    }

    .workflow-sprint-toggle-met strong {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-strong);
        font-size: .72rem;
        line-height: 1;
        padding: .22rem .42rem;
    }

    .workflow-sprint-grid:not(.is-showing-met) .workflow-sprint-card.is-outcome-met {
        display: none;
    }

    .workflow-sprint-grid:not(.is-showing-met) .workflow-sprint-size-section.is-met-only {
        display: none;
    }

    .workflow-sprint-size-section {
        display: grid;
        gap: .9rem;
        max-width: 100%;
    }

    .workflow-sprint-size-card-grid {
        align-items: start;
        display: grid;
        gap: 1rem;
        grid-template-columns: repeat(auto-fill, minmax(min(100%, 400px), 400px));
        justify-content: start;
    }

    .workflow-sprint-size-header {
        align-items: center;
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 8px;
        display: flex;
        gap: .75rem;
        justify-content: space-between;
        padding: .55rem .75rem;
        width: 100%;
        max-width: 100%;
    }

    .workflow-sprint-size-title {
        color: var(--paac-text-strong);
        font-size: .98rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .workflow-sprint-size-count {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        font-size: .78rem;
        font-weight: 700;
        line-height: 1;
        padding: .4rem .7rem;
        white-space: nowrap;
    }

    .workflow-sprint-card {
        background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-surface-subtle) 100%);
        border: 1px solid var(--paac-border-medium);
        border-radius: 18px;
        box-shadow: var(--paac-shadow-medium);
        display: grid;
        gap: .85rem;
        grid-template-rows: auto;
        max-width: 100%;
        padding: 1.1rem;
        width: 400px;
    }

    .workflow-sprint-card.is-date-overdue {
        border-color: var(--paac-tone-danger-border);
        box-shadow: var(--paac-tone-danger-ring);
    }

    .workflow-sprint-card.is-date-upcoming {
        border-color: var(--paac-tone-warning-border);
        box-shadow: var(--paac-tone-warning-ring);
    }

    .workflow-sprint-card.is-date-healthy {
        border-color: var(--paac-tone-success-border);
    }

    .workflow-sprint-card-topline,
    .workflow-sprint-card-meta,
    .workflow-sprint-card-actions {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: .55rem;
    }

    .workflow-sprint-card-sprint {
        color: var(--paac-tone-info-accent);
        font-size: .74rem;
        font-weight: 700;
        letter-spacing: .07em;
        text-transform: uppercase;
    }

    .workflow-sprint-card-title {
        align-self: start;
        color: var(--paac-text-strong);
        display: -webkit-box;
        font-size: 1.05rem;
        font-weight: 700;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        line-clamp: 2;
        margin: 0;
        overflow: hidden;
    }

    .workflow-sprint-card-meta {
        align-content: flex-start;
        align-self: start;
        color: var(--paac-text-muted);
        font-size: .86rem;
        font-weight: 600;
    }

    .workflow-sprint-card-meta span,
    .workflow-sprint-outcome {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        display: inline-flex;
        line-height: 1;
        padding: .38rem .62rem;
    }

    .workflow-sprint-outcome {
        font-size: .74rem;
        font-weight: 700;
    }

    .workflow-sprint-outcome.is-progress {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        color: var(--paac-tone-warning-text);
    }

    .workflow-sprint-card-meta span.is-warning {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        color: var(--paac-tone-warning-text);
    }

    .workflow-sprint-card-meta span.is-danger {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        color: var(--paac-tone-danger-text);
    }

    .workflow-sprint-outcome.is-met {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
        color: var(--paac-tone-success-text);
    }

    .workflow-sprint-outcome.is-missed {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        color: var(--paac-tone-danger-text);
    }

    .workflow-sprint-card-notes {
        align-self: stretch;
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 14px;
        color: var(--paac-text-muted);
        display: block;
        font-size: .9rem;
        line-height: 1.45;
        padding: .85rem .95rem;
        white-space: normal;
        min-height: 8rem;
    }

    .workflow-sprint-card-notes.is-empty {
        color: var(--paac-text-muted);
    }

    .workflow-sprint-card-date-health {
        align-content: start;
        align-self: start;
        border: 1px solid var(--paac-border-medium);
        border-radius: 14px;
        display: grid;
        gap: .25rem;
        min-height: 3rem;
        padding: .8rem .9rem;
    }

    .workflow-sprint-card-date-health strong {
        font-size: .86rem;
    }

    .workflow-sprint-card-date-health span {
        color: var(--paac-text-muted);
        font-size: .8rem;
        font-weight: 600;
    }

    .workflow-sprint-card-date-health-overdue {
        background: var(--paac-tone-danger-bg);
        border-color: var(--paac-tone-danger-border);
        color: var(--paac-tone-danger-text);
    }

    .workflow-sprint-card-date-health-upcoming {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
        color: var(--paac-tone-warning-text);
    }

    .workflow-sprint-card-date-health-healthy {
        background: var(--paac-tone-success-bg);
        border-color: var(--paac-tone-success-border);
        color: var(--paac-tone-success-text);
    }

    .workflow-sprint-card-date-health-unknown {
        background: var(--paac-surface-subtle);
        border-color: var(--paac-border-medium);
        color: var(--paac-text-muted);
    }

    .workflow-sprint-card-booking {
        align-content: start;
        align-self: start;
        display: grid;
        gap: .5rem;
    }

    .workflow-sprint-card-booked-count {
        background: var(--paac-tone-success-bg);
        border: 1px solid var(--paac-tone-success-border);
        border-radius: 12px;
        color: var(--paac-tone-success-text);
        font-size: .84rem;
        font-weight: 700;
        padding: .65rem .8rem;
    }

    .workflow-sprint-card-booked-count.is-current {
        background: var(--paac-tone-info-bg);
        border-color: var(--paac-tone-info-border);
        color: var(--paac-tone-info-text);
    }

    .workflow-sprint-card-booked-count.is-empty {
        background: var(--paac-surface-subtle);
        border-color: var(--paac-border-medium);
        color: var(--paac-text-muted);
    }

    .workflow-sprint-card-booked-list {
        display: flex;
        flex-wrap: wrap;
        gap: .45rem;
    }

    .workflow-sprint-card-booked-list span {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        display: inline-flex;
        font-size: .76rem;
        font-weight: 600;
        line-height: 1;
        padding: .4rem .58rem;
    }

    .workflow-project-tasks-body {
        display: grid;
        gap: .9rem;
    }

    .workflow-project-task-summary {
        align-items: center;
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 14px;
        color: var(--paac-text-muted);
        display: flex;
        flex-wrap: wrap;
        font-size: .86rem;
        font-weight: 600;
        gap: .55rem;
        justify-content: space-between;
        padding: .85rem .95rem;
    }

    .workflow-project-task-list {
        display: grid;
        gap: .85rem;
    }

    .workflow-project-phase-list {
        display: grid;
        gap: 1rem;
    }

    .workflow-project-phase-group {
        border-left: 3px solid var(--paac-border-medium);
        display: grid;
        gap: .8rem;
        margin-left: calc(var(--phase-depth, 0) * .8rem);
        padding-left: 1rem;
    }

    .workflow-project-phase-head {
        align-items: flex-start;
        display: flex;
        gap: .9rem;
        justify-content: space-between;
    }

    .workflow-project-phase-title-wrap {
        display: grid;
        gap: .45rem;
    }

    .workflow-project-phase-title {
        color: var(--paac-text-strong);
        font-size: .98rem;
        font-weight: 800;
        letter-spacing: .01em;
        line-height: 1.35;
        margin: 0;
    }

    .workflow-project-phase-meta {
        color: var(--paac-text-muted);
        display: flex;
        flex-wrap: wrap;
        font-size: .8rem;
        font-weight: 600;
        gap: .45rem;
    }

    .workflow-project-phase-meta span,
    .workflow-project-phase-count {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        display: inline-flex;
        line-height: 1;
        padding: .4rem .62rem;
    }

    .workflow-project-phase-count {
        font-size: .75rem;
        font-weight: 800;
        min-width: 2rem;
        justify-content: center;
    }

    .workflow-project-task-card {
        background: linear-gradient(180deg, var(--paac-white) 0%, var(--paac-surface-subtle) 100%);
        border: 1px solid var(--paac-border-medium);
        border-radius: 16px;
        box-shadow: var(--paac-shadow-soft);
        display: grid;
        gap: .7rem;
        padding: .95rem 1rem;
        margin-left: 25px;
    }

    .workflow-project-task-head {
        align-items: flex-start;
        display: flex;
        gap: .75rem;
        justify-content: space-between;
    }

    .workflow-project-task-title {
        color: var(--paac-text-strong);
        font-size: .98rem;
        font-weight: 700;
        line-height: 1.4;
        margin: 0;
    }

    a.workflow-project-task-title {
        text-decoration: none;
    }

    a.workflow-project-task-title:hover,
    a.workflow-project-task-title:focus {
        color: var(--paac-teal);
        text-decoration: underline;
        text-underline-offset: 2px;
    }

    .workflow-project-task-status {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        color: var(--paac-text-muted);
        display: inline-flex;
        flex-shrink: 0;
        font-size: .75rem;
        font-weight: 700;
        line-height: 1;
        padding: .42rem .68rem;
    }

    .workflow-project-task-meta {
        color: var(--paac-text-muted);
        display: flex;
        flex-wrap: wrap;
        font-size: .82rem;
        font-weight: 600;
        gap: .55rem;
    }

    .workflow-project-task-meta span {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-strong);
        border-radius: 999px;
        display: inline-flex;
        line-height: 1;
        padding: .38rem .6rem;
    }

    .workflow-sprint-card-actions .btn-link {
        font-weight: 700;
        text-decoration: none;
    }

    .workflow-sprint-card-actions .btn-link:hover,
    .workflow-sprint-card-actions .btn-link:focus {
        text-decoration: none;
    }

    .workflow-sprint-card.is-linked-focus {
        box-shadow: var(--paac-tone-info-ring), var(--paac-shadow-soft);
        transform: translateY(-2px);
        transition: box-shadow .18s ease, transform .18s ease;
    }

    .workflow-sprint-card-actions {
        align-self: start;
    }

    .workflow-sprint-detail-modal .modal-content {
        background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-white) 100%);
    }

    .tech-calendar-modal .modal-content {
        background: linear-gradient(180deg, var(--paac-surface-subtle) 0%, var(--paac-white) 100%);
    }

    .tech-calendar-toolbar {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: .75rem;
    }

    .tech-calendar-duration-group {
        display: flex;
        flex-wrap: wrap;
        gap: .5rem;
    }

    .tech-calendar-custom-name {
        max-width: 320px;
        min-width: 220px;
    }

    .tech-calendar-custom-wrap {
        display: block;
    }

    .tech-calendar-duration-option {
        background: var(--paac-surface-subtle-alt);
        border: 1px solid var(--paac-border-medium);
        border-radius: 999px;
        color: var(--paac-text-muted);
        font-size: .84rem;
        font-weight: 700;
        padding: .4rem .8rem;
    }

    .tech-calendar-duration-option.active {
        background: var(--paac-ink);
        border-color: var(--paac-ink);
        color: var(--paac-white);
    }

    .tech-calendar-summary {
        display: grid;
        gap: 1rem;
        grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
        margin-bottom: 1rem;
    }

    .tech-calendar-panel {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 16px;
        padding: 1rem;
        box-shadow: var(--paac-shadow-soft);
    }

    .tech-calendar-panel h6 {
        color: var(--paac-text-strong);
        font-weight: 700;
        margin-bottom: .85rem;
    }

    .tech-calendar-list {
        display: grid;
        gap: .75rem;
    }

    .tech-calendar-suggestion,
    .tech-calendar-move {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 14px;
        padding: .85rem .95rem;
    }

    .tech-calendar-suggestion-head {
        align-items: center;
        display: flex;
        gap: .75rem;
        justify-content: space-between;
    }

    .tech-calendar-suggestion-copy {
        min-width: 0;
    }

    .tech-calendar-book-slot {
        flex-shrink: 0;
    }

    .tech-calendar-start-picker {
        align-items: center;
        display: flex;
        flex-shrink: 0;
        gap: .45rem;
    }

    .tech-calendar-start-picker .tech-calendar-start-select {
        min-width: 116px;
    }

    .tech-calendar-start-picker-slot {
        align-items: stretch;
        flex-direction: column;
        margin-top: .5rem;
    }

    .tech-calendar-start-picker-slot .tech-calendar-start-select,
    .tech-calendar-start-picker-slot .tech-calendar-book-slot {
        width: 100%;
    }

    .tech-calendar-suggestion strong,
    .tech-calendar-move strong {
        color: var(--paac-text-strong);
    }

    .tech-calendar-days {
        display: grid;
        gap: 1rem;
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }

    .tech-calendar-day {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-radius: 16px;
        padding: 1rem;
        min-height: 220px;
        box-shadow: var(--paac-shadow-soft);
    }

    .tech-calendar-day h6 {
        color: var(--paac-text-strong);
        font-weight: 700;
        margin-bottom: .9rem;
    }

    .tech-calendar-load-meter {
        color: var(--paac-text-muted);
        font-size: .82rem;
        font-weight: 700;
        margin-bottom: .85rem;
    }

    .tech-calendar-slot-grid {
        display: grid;
        gap: .45rem;
    }

    .tech-calendar-slot {
        align-items: flex-start;
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-radius: 12px;
        display: grid;
        gap: .55rem;
        grid-template-columns: 56px minmax(0, 1fr);
        padding: .6rem .7rem;
    }

    .tech-calendar-slot.is-free {
        background: var(--paac-tone-success-bg);
        border-style: dashed;
    }

    .tech-calendar-slot.is-busy {
        background: var(--paac-surface-subtle);
        border-color: var(--paac-border-medium);
    }

    .tech-calendar-slot.is-stacked {
        background: var(--paac-tone-warning-bg);
        border-color: var(--paac-tone-warning-border);
    }

    .tech-calendar-slot-time {
        color: var(--paac-text-muted);
        font-size: .78rem;
        font-weight: 800;
        letter-spacing: .04em;
        padding-top: .15rem;
        text-transform: uppercase;
    }

    .tech-calendar-slot-items {
        display: grid;
        gap: .45rem;
    }

    .tech-calendar-slot-empty {
        color: var(--paac-text-muted);
        font-size: .84rem;
        font-style: italic;
    }

    .tech-calendar-slot-free-range {
        color: var(--paac-text-muted);
        font-size: .74rem;
        font-style: normal;
        font-weight: 700;
        margin-top: .35rem;
    }

    .tech-calendar-slot-booking {
        background: var(--paac-white);
        border: 1px solid var(--paac-border-medium);
        border-left: 4px solid var(--paac-tone-neutral-accent);
        border-radius: 10px;
        padding: .55rem .65rem;
    }

    .tech-calendar-slot-booking.is-ticket {
        border-left-color: var(--paac-blue);
    }

    .tech-calendar-slot-booking.is-focused {
        border-left-color: var(--paac-tone-danger-accent);
        background: var(--paac-tone-danger-bg);
    }

    .tech-calendar-slot-booking.is-movable {
        border-left-color: var(--paac-orange);
        background: var(--paac-tone-warning-bg);
    }

    .tech-calendar-slot-booking-title {
        color: var(--paac-text-strong);
        font-weight: 700;
        line-height: 1.35;
        margin-bottom: .2rem;
    }

    .tech-calendar-slot-booking-meta {
        color: var(--paac-text-muted);
        font-size: .8rem;
    }

    .tech-calendar-events {
        display: grid;
        gap: .75rem;
    }

    .tech-calendar-event {
        background: var(--paac-surface-subtle);
        border: 1px solid var(--paac-border-medium);
        border-left: 4px solid var(--paac-tone-neutral-accent);
        border-radius: 12px;
        padding: .8rem .85rem;
    }

    .tech-calendar-event.is-ticket {
        border-left-color: var(--paac-blue);
    }

    .tech-calendar-event.is-focused {
        border-left-color: var(--paac-tone-danger-accent);
        background: var(--paac-tone-danger-bg);
    }

    .tech-calendar-event.is-movable {
        border-left-color: var(--paac-orange);
        background: var(--paac-tone-warning-bg);
    }

    .tech-calendar-event-time {
        color: var(--paac-text-muted);
        font-size: .82rem;
        font-weight: 700;
        margin-bottom: .35rem;
        text-transform: uppercase;
        letter-spacing: .04em;
    }

    .tech-calendar-event-title {
        color: var(--paac-text-strong);
        font-weight: 700;
        margin-bottom: .35rem;
        line-height: 1.35;
    }

    .tech-calendar-event-meta {
        color: var(--paac-text-muted);
        font-size: .84rem;
    }

    .tech-calendar-event-link {
        border: 0;
        background: none;
        color: var(--paac-teal-deep);
        font-weight: 700;
        padding: 0;
        text-decoration: underline;
        text-underline-offset: 2px;
    }

    .tech-calendar-event-link:hover,
    .tech-calendar-event-link:focus {
        color: var(--paac-teal);
    }

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

        .workflow-sprint-card {
            grid-template-rows: auto;
        }

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

        .ticket-detail-right {
            grid-template-columns: minmax(0, 1fr);
        }

        .ticket-detail-section-nav {
            display: none;
        }

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

        .ticket-note-form-grid {
            grid-template-columns: 1fr;
        }

        .ticket-chat-context-grid {
            grid-template-columns: 1fr;
        }

        .tech-calendar-summary {
            grid-template-columns: 1fr;
        }

        .ticket-detail-modal .ticket-sync-stamp-extra,
        [id^="ticketDetailModal-"] .ticket-sync-stamp-extra {
            display: none;
        }
    }

    @media (max-width: 575.98px) {
        .ticket-detail-modal-header {
            display: block;
            padding: .75rem 3rem .65rem .75rem;
            position: relative;
        }

        .ticket-detail-modal-summary {
            align-items: flex-start;
            display: flex;
            gap: .65rem;
            margin-bottom: .25rem;
            max-width: 100%;
        }

        .ticket-detail-modal-meta {
            flex: 1 1 auto;
            margin-bottom: 0;
            max-width: none;
        }

        .ticket-detail-header-status, .ticket-view-timer {
            display: none;
        }

        .ticket-view-timer {
            flex: 0 0 auto;
            margin-bottom: 0;
            min-width: 92px;
            padding: .38rem .5rem;
            width: auto;
        }

        .ticket-view-timer-label,
        .ticket-view-timer-suggestion {
            font-size: .62rem;
        }

        .ticket-view-timer-value {
            font-size: 1.05rem;
        }

        .ticket-detail-close-mobile {
            display: block !important;
            position: absolute;
            right: .75rem;
            top: .75rem;
            z-index: 2;
        }

        .ticket-detail-close-desktop {
            display: none !important;
        }

        .ticket-detail-close {
            font-size: 1.55rem;
            height: 2rem;
            padding: 0;
            text-align: center;
            width: 2rem;
        }

        .ticket-detail-modal-actions {
            align-items: flex-start;
            display: block;
            gap: .65rem;
            margin-top: 0;
            width: 100%;
        }

        .ticket-detail-mobile-actions-toggle {
            display: inline-flex;
            position: absolute;
            right: 3rem;
            top: .75rem;
            z-index: 2;
        }

        .ticket-detail-modal-action-buttons {
            display: none;
            gap: .5rem;
            justify-content: flex-start;
            margin-top: .55rem;
        }

        .ticket-detail-modal.ticket-detail-actions-expanded .ticket-detail-modal-action-buttons,
        [id^="ticketDetailModal-"].ticket-detail-actions-expanded .ticket-detail-modal-action-buttons {
            display: flex;
        }

        .ticket-tools-body {
            display: block;
        }

        .ticket-tools-picker {
            border-right: 0;
            border-bottom: 1px solid var(--paac-border-medium);
            margin-bottom: 1rem;
            padding-bottom: 1rem;
            padding-right: 0;
        }

        .ticket-tools-list {
            max-height: 240px;
        }

        .ticket-tools-frame {
            height: 64vh;
        }
    }

    body.clive-embed-mode #wrapper > nav,
    body.clive-embed-mode .topbar,
    body.clive-embed-mode footer.sticky-footer,
    body.clive-embed-mode .card-header a.btn,
    body.clive-embed-mode h3.text-dark.mb-2 {
        display: none !important;
    }

    body.clive-embed-mode #content-wrapper,
    body.clive-embed-mode #content {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.clive-embed-mode .container-fluid {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .clive-embed-bar {
        display: none;
    }

    body.clive-embed-mode .clive-embed-bar {
        display: flex;
        justify-content: flex-end;
        gap: .5rem;
        margin-bottom: .75rem;
    }
/* end clive ai tech assist */

/* project and task sidekick */
.project-sidekick-modal .modal-body { min-height: 420px; }
.project-browser-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(310px, 1fr)); gap: 1rem; }
.project-browser-card { background: var(--paac-surface, #fff); border: 1px solid var(--paac-teal-deep, #066373); border-left-width: 4px; border-radius: .7rem; display: flex; flex-direction: column; min-width: 0; padding: 1rem; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.project-browser-card:hover { border-color: var(--paac-teal-deep, #066373); box-shadow: 0 .4rem 1rem rgba(31, 45, 61, .08); transform: translateY(-1px); }
.project-browser-card.is-project-overdue { border-color: var(--paac-tone-danger-border); border-left: 4px solid var(--paac-tone-danger-accent, #dc3545); }

/* Tech Assist sprint planner */
.sprint-planner-dialog { max-width: min(98vw, 1900px); width: 98vw; }
.sprint-planner-toolbar { align-items: center; display: flex; flex-wrap: wrap; gap: .75rem; justify-content: space-between; }
.sprint-planner-week-controls { align-items: center; display: flex; flex-wrap: wrap; gap: .4rem; }
.sprint-planner-week { min-width: 155px; }
.sprint-planner-board { display: grid; gap: .75rem; grid-template-columns: repeat(5, minmax(245px, 1fr)); min-width: 1280px; }
.sprint-planner-board.is-saving { opacity: .55; pointer-events: none; }
#workflowSprintPlannerModal .modal-body { overflow-x: auto; }
.sprint-planner-column { background: var(--paac-surface-soft, #f7fafc); border: 1px solid var(--paac-border-medium, #dfe8f1); border-radius: .75rem; display: flex; flex-direction: column; min-height: 60vh; transition: border-color .15s ease, box-shadow .15s ease; }
.sprint-planner-column.is-anchor { border-color: var(--paac-teal-deep, #066373); box-shadow: inset 0 3px 0 var(--paac-teal-deep, #066373); }
.sprint-planner-column.is-drag-over { border-color: var(--paac-green, #64a70b); box-shadow: 0 0 0 3px rgba(100, 167, 11, .18); }
.sprint-planner-column > header { align-items: flex-start; border-bottom: 1px solid var(--paac-border-medium, #dfe8f1); display: flex; gap: .5rem; justify-content: space-between; min-height: 72px; padding: .8rem; }
.sprint-planner-column > header strong { color: var(--paac-text-strong, #243746); display: block; font-size: .9rem; }
.sprint-planner-column > header small { color: var(--paac-text-muted, #6c7a89); display: block; font-size: .7rem; margin-top: .25rem; }
.sprint-planner-column-cards { display: flex; flex: 1; flex-direction: column; gap: .65rem; padding: .65rem; }
.sprint-planner-empty { color: var(--paac-text-muted, #7b8794); font-size: .78rem; margin: .5rem; text-align: center; }
.sprint-planner-card { background: var(--paac-surface, #fff); border: 1px solid var(--paac-teal-deep, #066373); border-left: 4px solid var(--paac-green, #64a70b); border-radius: .6rem; cursor: grab; padding: .7rem; }
.sprint-planner-card:hover, .sprint-planner-card:focus-within { border-color: var(--paac-green, #64a70b); box-shadow: 0 .25rem .75rem rgba(31, 45, 61, .09); outline: 0; }
.sprint-planner-card.is-resolved { cursor: default; opacity: .82; }
.sprint-planner-card-top { align-items: center; display: flex; gap: .3rem; justify-content: space-between; margin-bottom: .35rem; }
.sprint-planner-card-badges { align-items: center; display: flex; flex-wrap: wrap; gap: .3rem; min-width: 0; }
.sprint-planner-card-name { color: var(--paac-link, #b31657); font-size: .86rem; font-weight: 700; line-height: 1.25; text-align: left; white-space: normal; }
.sprint-planner-card-company { color: var(--paac-text-muted, #74808d); font-size: .68rem; margin-top: .2rem; }
.sprint-planner-card-meta { display: flex; flex-direction: column; gap: .2rem; margin-top: .5rem; }
.sprint-planner-card-meta span { color: var(--paac-text-muted, #5f6c79); font-size: .7rem; overflow-wrap: anywhere; }
.sprint-planner-card-meta i { color: var(--paac-teal-deep, #066373); margin-right: .35rem; width: .8rem; }
.sprint-planner-card-actions { margin-top: .5rem; text-align: right; }
.project-health-light { align-items: center; background: var(--paac-surface-soft, #f6f8fa); border: 1px solid var(--paac-border-medium, #dfe8f1); border-radius: 999px; color: var(--paac-text-muted, #596774); display: inline-flex; font-size: .68rem; gap: .3rem; margin-top: .5rem; max-width: 100%; padding: .2rem .45rem; width: fit-content; }
.project-health-light > span { background: #9aa6b2; border-radius: 50%; box-shadow: 0 0 0 2px rgba(154, 166, 178, .18); flex: 0 0 8px; height: 8px; width: 8px; }
.project-health-light small { border-left: 1px solid var(--paac-border-medium, #dfe8f1); font-size: .62rem; margin-left: .15rem; padding-left: .35rem; }
.project-health-light.is-green > span { background: #28a745; box-shadow: 0 0 0 2px rgba(40, 167, 69, .18); }
.project-health-light.is-amber > span { background: #ffc107; box-shadow: 0 0 0 2px rgba(255, 193, 7, .22); }
.project-health-light.is-red > span { background: #dc3545; box-shadow: 0 0 0 2px rgba(220, 53, 69, .18); }
@media (max-width: 767.98px) { .sprint-planner-dialog { margin: .25rem; width: calc(100vw - .5rem); } .sprint-planner-toolbar { align-items: stretch; flex-direction: column; } }
.project-gantt-toolbar { align-items: center; display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
.project-gantt-shell { background: var(--paac-surface, #fff); border: 1px solid var(--paac-border-medium, #dfe8f1); border-radius: .7rem; overflow: hidden; }
.project-gantt-scroll { overflow-x: auto; overscroll-behavior-inline: contain; }
.project-gantt-chart { --gantt-label-width: 420px; min-width: calc(var(--gantt-label-width) + var(--gantt-timeline-width)); width: 100%; }
.project-gantt-header, .project-gantt-row { display: grid; grid-template-columns: var(--gantt-label-width) var(--gantt-timeline-width); }
.project-gantt-header { background: var(--paac-surface-subtle-alt, #eef4fb); border-bottom: 1px solid var(--paac-border-medium, #dfe8f1); min-height: 52px; }
.project-gantt-corner { align-items: center; background: var(--paac-surface-subtle-alt, #eef4fb); border-right: 1px solid var(--paac-border-medium, #dfe8f1); color: var(--paac-text-muted, #6b7887); display: flex; font-size: .72rem; font-weight: 700; left: 0; letter-spacing: .04em; padding: .7rem .85rem; position: sticky; text-transform: uppercase; z-index: 4; }
.project-gantt-axis, .project-gantt-track { position: relative; }
.project-gantt-axis-segment { align-items: center; border-right: 1px solid var(--paac-border-medium, #dfe8f1); display: flex; flex-direction: column; height: 100%; justify-content: center; overflow: hidden; padding: .35rem; position: absolute; text-align: center; top: 0; white-space: nowrap; }
.project-gantt-axis-segment strong { color: var(--paac-text-strong, #16324f); font-size: .76rem; }
.project-gantt-axis-segment small { color: var(--paac-text-muted, #6b7887); font-size: .65rem; }
.project-gantt-row { border-bottom: 1px solid var(--paac-border-soft, #e8edf2); min-height: 50px; }
.project-gantt-row:last-child { border-bottom: 0; }
.project-gantt-row:hover { background: rgba(6, 99, 115, .04); }
.project-gantt-label { align-items: center; background: var(--paac-surface, #fff); border-right: 1px solid var(--paac-border-medium, #dfe8f1); display: flex; left: 0; min-width: 0; padding: .55rem .75rem; position: sticky; z-index: 3; }
.project-gantt-label > div { max-width: 100%; min-width: 0; overflow: hidden; width: 100%; }
.project-gantt-label button { color: var(--paac-teal-deep, #066373); display: block; font-size: .78rem; font-weight: 700; line-height: 1.2; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.project-gantt-label small { align-items: center; color: var(--paac-text-muted, #6b7887); display: flex; font-size: .68rem; gap: .45rem; margin-top: .2rem; max-width: 100%; min-width: 0; overflow: hidden; white-space: nowrap; }
.project-gantt-meta-part { align-items: center; display: inline-flex; flex: 0 1 auto; gap: .22rem; min-width: 0; overflow: hidden; }
.project-gantt-meta-part.is-primary { flex: 1 1 auto; }
.project-gantt-meta-part > i { flex: 0 0 auto; font-size: .63rem; opacity: .82; }
.project-gantt-meta-part > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.project-gantt-meta-part:not(.is-primary) > span { max-width: 76px; }
.project-gantt-meta-part:last-child { flex: 0 0 auto; }
.project-gantt-meta-part:last-child > span { max-width: none; overflow: visible; }
.project-gantt-meta-part.is-progress { flex: 0 0 auto; }
.project-gantt-meta-part.is-progress > span { max-width: none; overflow: visible; }
.project-gantt-track { background-image: repeating-linear-gradient(to right, transparent 0, transparent calc(var(--gantt-grid-step) - 1px), var(--paac-border-soft, #e8edf2) calc(var(--gantt-grid-step) - 1px), var(--paac-border-soft, #e8edf2) var(--gantt-grid-step)); min-height: 50px; }
.project-gantt-bar { --gantt-bar-colour: var(--paac-teal-deep, #066373); align-items: center; background: rgba(6, 99, 115, .55); border: 1px solid var(--gantt-bar-colour); border-radius: 999px; color: #fff; display: flex; font-size: .67rem; font-weight: 700; height: 22px; min-width: 12px; overflow: hidden; padding: 0; position: absolute; text-shadow: 0 1px 2px rgba(0, 0, 0, .65); top: 14px; white-space: nowrap; z-index: 3; }
.project-gantt-bar-progress { background: var(--gantt-bar-colour); bottom: 0; left: 0; position: absolute; top: 0; transition: width .2s ease; }
.project-gantt-bar-label { overflow: hidden; padding: 0 .45rem; position: relative; text-overflow: ellipsis; white-space: nowrap; z-index: 1; }
.project-gantt-bar:hover, .project-gantt-bar:focus { color: #fff; filter: brightness(1.12); text-decoration: none; }
.project-gantt-row.is-completed .project-gantt-bar { --gantt-bar-colour: var(--paac-tone-success-text, #2d7a44); background: rgba(45, 122, 68, .55); }
.project-gantt-row.is-overdue .project-gantt-bar { --gantt-bar-colour: var(--paac-tone-danger-accent, #c6453d); background: rgba(198, 69, 61, .55); }
.project-gantt-today { border-left: 2px solid var(--paac-orange, #dc6d2c); bottom: 0; pointer-events: none; position: absolute; top: 0; z-index: 2; }
.project-gantt-today::before { background: var(--paac-orange, #dc6d2c); border-radius: 999px; content: ''; height: 7px; left: -4px; position: absolute; top: 0; width: 7px; }
.project-gantt-deadline { border-left: 3px solid var(--paac-orange, #dc6d2c); bottom: 8px; cursor: help; position: absolute; top: 8px; z-index: 2; }
.project-gantt-deadline::after { background: var(--paac-orange, #dc6d2c); content: ''; height: 7px; left: -5px; position: absolute; top: -1px; transform: rotate(45deg); width: 7px; }
.project-gantt-empty { margin: 0; padding: 1rem; }
.ticket-detail-hero.is-project-overdue, .project-deadline-stat.is-project-overdue, .project-deadline-meta.is-project-overdue { background: var(--paac-tone-danger-bg); border-color: var(--paac-tone-danger-border); box-shadow: var(--paac-tone-danger-ring); }
.project-browser-card-topline { align-items: center; display: flex; gap: .6rem; justify-content: space-between; margin-bottom: .65rem; }
.project-browser-type-label { color: var(--paac-text-muted, #6c757d); font-size: .68rem; font-weight: 800; letter-spacing: .075em; text-transform: uppercase; }
.project-browser-sprint-badges { align-items: center; display: flex; flex-wrap: wrap; gap: .3rem; justify-content: flex-end; }
.project-browser-sprint-badges .badge { border-radius: 999px; font-size: .7rem; padding: .32rem .5rem; }
.project-browser-company { color: var(--paac-text-muted, #6c757d); font-size: .8rem; line-height: 1.35; margin-top: .2rem; }
.project-browser-owner { align-items: center; border-top: 1px solid var(--paac-border, #e4e8ec); display: flex; gap: .55rem; margin-top: .8rem; padding-top: .7rem; }
.project-browser-owner > i { color: var(--paac-tone-info-accent, #4e9fd1); width: 1rem; }
.project-browser-owner span { color: var(--paac-text-body, #495057); font-size: .8rem; line-height: 1.2; }
.project-browser-owner small { color: var(--paac-text-muted, #6c757d); display: block; font-size: .66rem; font-weight: 700; margin-bottom: .13rem; text-transform: uppercase; }
.project-browser-sprint-resources { align-items: flex-start; color: var(--paac-text-muted, #6c757d); display: flex; font-size: .75rem; gap: .55rem; margin-top: .5rem; }
.project-browser-sprint-resources > i { color: var(--paac-text-muted, #6c757d); margin-top: .15rem; width: 1rem; }
.project-browser-delivery { background: var(--paac-surface-subtle, #f8f9fa); border: 1px solid var(--paac-border, #e4e8ec); border-radius: .55rem; margin-top: .8rem; padding: .7rem; }
.project-browser-delivery-heading, .project-browser-progress-row, .project-browser-deadline-row { align-items: center; display: flex; justify-content: space-between; gap: .6rem; }
.project-browser-task-count { color: var(--paac-text-muted, #6c757d); font-size: .74rem; font-weight: 600; }
.project-browser-progress-row { margin-top: .6rem; }
.project-browser-progress-row .progress { flex: 1 1 auto; height: .45rem; margin: 0; }
.project-browser-progress-row > strong { color: var(--paac-text-body, #495057); font-size: .72rem; min-width: 2.4rem; text-align: right; }
.project-browser-deadline-row { border-top: 1px solid var(--paac-border, #e4e8ec); margin-top: .6rem; padding-top: .55rem; }
.project-browser-booking-flag { align-items: center; border-radius: .42rem; display: flex; font-size: .74rem; gap: .45rem; margin-top: .6rem; padding: .45rem .55rem; }
.project-browser-booking-flag.has-bookings { background: var(--paac-tone-success-bg); border: 1px solid var(--paac-tone-success-border); color: var(--paac-tone-success-text); }
.project-browser-booking-flag.is-empty { background: var(--paac-tone-warning-bg); border: 1px solid var(--paac-tone-warning-border); color: var(--paac-tone-warning-text); }
.project-browser-booking-flag strong { font-size: .84rem; }
.project-deadline-badge { align-items: center; background: transparent; border: 0; border-radius: 4px; color: var(--paac-text-muted); display: inline-flex; font-size: .72rem; font-weight: 600; gap: .35rem; margin: 0; padding: 0; }
.project-deadline-badge strong { margin-left: .2rem; }
.project-deadline-badge.is-project-overdue { background: var(--paac-tone-danger-bg); border-color: var(--paac-tone-danger-border); color: var(--paac-tone-danger-text); }
.project-browser-deadline-row .project-deadline-badge.is-project-overdue { background: transparent; }
.project-browser-name { background: transparent; border: 0; color: #1769aa; font-size: 1rem; font-weight: 700; line-height: 1.35; padding: 0; text-align: left; }
.project-browser-sprint-note { margin-top: .75rem; }
.project-browser-sprint-note > span { color: var(--paac-text-muted, #6c757d); display: block; font-size: .66rem; font-weight: 800; letter-spacing: .05em; margin-bottom: .18rem; text-transform: uppercase; }
.project-browser-sprint-note p { color: var(--paac-text-body, #495057); display: -webkit-box; font-size: .76rem; line-height: 1.4; margin: 0; overflow: hidden; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.project-booking-overview { border-left: 4px solid var(--paac-tone-success-border); }
.project-booking-overview.is-empty { background: var(--paac-tone-warning-bg); border-color: var(--paac-tone-warning-border); border-left-color: var(--paac-tone-warning-border); }
.project-booking-overview-heading { align-items: center; display: flex; gap: 1rem; justify-content: space-between; }
.project-booking-count { align-items: center; background: var(--paac-tone-success-bg); border: 1px solid var(--paac-tone-success-border); border-radius: 999px; color: var(--paac-tone-success-text); display: inline-flex; font-size: 1rem; font-weight: 800; gap: .4rem; padding: .45rem .7rem; }
.project-booking-overview.is-empty .project-booking-count { background: var(--paac-tone-warning-bg); border-color: var(--paac-tone-warning-border); color: var(--paac-tone-warning-text); }
.project-booking-slot-list { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .8rem; }
.project-booking-slot-list span { align-items: center; background: var(--paac-tone-success-bg); border: 1px solid var(--paac-tone-success-border); border-radius: 999px; color: var(--paac-tone-success-text); display: inline-flex; font-size: .76rem; gap: .35rem; padding: .35rem .55rem; }
.project-booking-empty-message { align-items: center; color: var(--paac-tone-warning-text); display: flex; font-size: .82rem; gap: .5rem; margin-top: .75rem; }
.project-email-summary { align-items: center; display: flex; gap: 1rem; justify-content: space-between; }
.project-email-count { align-items: center; background: var(--paac-tone-info-bg); border: 1px solid var(--paac-tone-info-border); border-radius: 999px; color: var(--paac-tone-info-text); display: inline-flex; font-size: 1rem; font-weight: 800; gap: .4rem; padding: .45rem .7rem; }
.project-email-list { display: grid; gap: .65rem; margin-top: .8rem; }
.project-email-message { background: var(--paac-surface, #fff); border: 1px solid var(--paac-border, #dfe3e8); border-radius: .55rem; overflow: hidden; }
.project-email-message.is-unread { border-left: 4px solid var(--paac-tone-info-accent); }
.project-email-message > summary { align-items: flex-start; cursor: pointer; display: grid; gap: .7rem; grid-template-columns: .55rem minmax(0, 1fr) auto; list-style: none; padding: .8rem; }
.project-email-message > summary::-webkit-details-marker { display: none; }
.project-email-state { background: var(--paac-tone-neutral-accent); border-radius: 999px; height: .5rem; margin-top: .32rem; width: .5rem; }
.project-email-message.is-unread .project-email-state { background: var(--paac-tone-info-accent); box-shadow: var(--paac-tone-info-ring); }
.project-email-heading { display: grid; min-width: 0; }
.project-email-heading strong { color: var(--paac-text-strong); font-size: .86rem; overflow-wrap: anywhere; }
.project-email-heading small { color: var(--paac-text-muted); margin-top: .12rem; }
.project-email-heading > span { color: var(--paac-text-muted); font-size: .76rem; margin-top: .3rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.project-email-meta { align-items: center; color: var(--paac-text-muted); display: flex; font-size: .72rem; gap: .45rem; white-space: nowrap; }
.project-email-content { border-top: 1px solid var(--paac-border, #dfe3e8); padding: .85rem; }
.project-email-addresses { color: var(--paac-text-muted); font-size: .76rem; margin-bottom: .8rem; overflow-wrap: anywhere; }
.project-email-body { background: var(--paac-surface-subtle, #f8f9fa); border: 1px solid var(--paac-border, #e4e8ec); border-radius: .45rem; color: var(--paac-text-body); font-size: .82rem; margin-bottom: .75rem; max-height: 480px; overflow: auto; padding: .8rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.project-browser-meta { display: flex; flex-wrap: wrap; gap: .8rem; margin: .8rem 0 .45rem; color: #69727d; font-size: .82rem; }
.project-sidekick-summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: .75rem; margin-bottom: 1rem; }
.project-sidekick-summary-grid > div { border: 1px solid var(--paac-border, #dfe3e8); border-radius: .5rem; padding: .7rem .8rem; }
.project-sidekick-summary-grid span { display: block; color: #6c757d; font-size: .75rem; text-transform: uppercase; letter-spacing: .03em; }
.project-sidekick-summary-grid strong { display: block; margin-top: .15rem; }
.project-detail-overview { display: grid; gap: 1rem; }
.project-detail-overview .ticket-detail-meta-grid { margin-bottom: 0; }
.project-overview-actions { gap: .45rem; }
.project-overview-date-range { font-size: .82rem; }
.project-sprint-history-panel { overflow-x: hidden; }
.project-sprint-history-panel > .row { border: 0 !important; margin: 0; padding: 0 !important; }
.project-sprint-history-panel > .row > .col { min-width: 0; padding: 0; }
.project-sidekick-description, .project-sidekick-description-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.project-sidekick-edit-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: .8rem; }
.project-sidekick-editor { display: grid; grid-template-columns: 1fr auto; gap: .35rem; align-items: end; }
.project-sidekick-editor label { grid-column: 1 / -1; margin: 0; font-size: .78rem; font-weight: 700; }
.project-sidekick-editor textarea { grid-column: 1 / -1; }
.project-sidekick-editor textarea + button { grid-column: 2; }
.project-sidekick-task-list { display: grid; gap: .45rem; }
.project-sidekick-task-view-actions { align-items: center; display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; }
.project-sidekick-task-gantt { min-width: 0; }
@media (max-width: 767.98px) {
    .project-gantt-toolbar { justify-content: flex-start; }
    .project-gantt-chart { --gantt-label-width: 340px; }
    .project-sidekick-task-view-actions { justify-content: flex-start; margin-top: .65rem; width: 100%; }
}
.project-sidekick-task { display: flex; justify-content: space-between; gap: 1rem; width: 100%; border: 1px solid var(--paac-border, #dfe3e8); border-radius: .45rem; padding: .7rem .8rem; background: var(--paac-surface, #fff); text-align: left; }
.project-sidekick-task:hover { border-color: #1769aa; }
.project-sidekick-task span:last-child { text-align: right; }
.project-sidekick-task small { display: block; margin-top: .15rem; color: #6c757d; }
.project-sidekick-task-open { flex: 1 1 auto; min-width: 0; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; }
.project-sidekick-task-open:hover strong { color: #1769aa; text-decoration: underline; }
.project-sidekick-task-state { align-items: flex-end; display: flex; flex-direction: column; gap: .25rem; }
.project-sidekick-task-state > span { align-items: center; display: flex; flex-wrap: wrap; gap: .35rem; justify-content: flex-end; }
.project-sidekick-task-state > .project-sidekick-task-timing { gap: .35rem; }
.project-sidekick-task-timing small { margin: 0; }
.project-sidekick-task-priority { font-size: .72rem; min-height: 0; padding: .2rem .4rem; }
.project-sidekick-task-estimate { align-items: center; display: inline-flex; gap: .25rem; margin: 0; color: #495057; font-size: .76rem; font-weight: 600; line-height: 1.2; }
.project-sidekick-task-estimate-input { width: 4.5rem; height: 1.45rem; min-height: 1.45rem; padding: 0 .25rem; font-size: .76rem; line-height: 1; text-align: right; }
.project-browser-hours { display: grid; grid-template-columns: auto 1fr auto 1fr; gap: .2rem .45rem; margin-top: .55rem; color: #6c757d; font-size: .76rem; }
.project-browser-hours strong { color: #343a40; font-weight: 700; text-align: right; }
.project-sidekick-phase-list { display: grid; gap: .9rem; }
.project-sidekick-phase { min-width: 0; }
.project-sidekick-phase-heading { align-items: flex-start; background: transparent; border: 0; border-left: 3px solid var(--paac-tone-info-accent, #4e9fd1); color: inherit; display: flex; gap: .55rem; margin: 0 0 .45rem var(--phase-indent, 0rem); padding: .35rem .55rem; text-align: left; width: calc(100% - var(--phase-indent, 0rem)); }
.project-sidekick-phase-heading:hover, .project-sidekick-phase-heading:focus { background: var(--paac-tone-info-bg, #eef7fc); color: inherit; outline: 0; }
.project-sidekick-phase-heading .project-sidekick-phase-symbol { color: var(--paac-tone-info-accent, #4e9fd1); margin-top: .2rem; }
.project-sidekick-phase-heading span { flex: 1 1 auto; min-width: 0; }
.project-sidekick-phase-heading small { color: #6c757d; display: block; font-size: .75rem; margin-top: .12rem; }
.project-sidekick-phase-chevron { color: #6c757d; margin-top: .2rem; transition: transform .15s ease; }
.project-sidekick-phase.is-collapsed > .project-sidekick-phase-heading .project-sidekick-phase-chevron { transform: rotate(-90deg); }
.project-sidekick-phase.is-collapsed > .project-sidekick-task-list { display: none; }
.project-sidekick-phase.is-collapsed-by-phase { display: none !important; }
.project-sprint-checkins-cell { min-width: 290px; }
.project-sprint-checkin-item { background: var(--paac-surface-subtle, #f8f9fa); border: 1px solid var(--paac-border, #dfe3e8); border-radius: .45rem; padding: .5rem .6rem; }
.project-sprint-checkin-item + .project-sprint-checkin-item { margin-top: .45rem; }
.project-sprint-checkin-meta { align-items: center; display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .3rem; }
.project-sprint-checkin-copy { font-size: .78rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.project-sidekick-task-tree-item { margin-left: var(--task-indent, 0rem); width: calc(100% - var(--task-indent, 0rem)); }
.project-sidekick-task-completed { opacity: .72; }
.project-sidekick-activity { border-bottom: 1px solid var(--paac-border, #e1e5ea); padding: .65rem 0; }
.project-sidekick-activity > div { display: flex; justify-content: space-between; gap: 1rem; }
.project-sidekick-activity span { color: #6c757d; font-size: .8rem; }
.project-sidekick-activity p { margin: .35rem 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.project-sidekick-note-cell { min-width: 280px; white-space: pre-wrap; }
.project-entity-chat-history { max-height: 360px; min-height: 120px; overflow-y: auto; }
.task-detail-modal .modal-body { background: #fff; }
.task-detail-shell { display: grid; gap: .75rem; }
.task-detail-layout { align-items: start; display: grid; gap: 1rem; grid-template-columns: minmax(320px, 420px) minmax(0, 1fr); }
.task-detail-left, .task-detail-right { display: grid; gap: 1rem; min-width: 0; }
.task-detail-workspace { padding-top: .9rem; }
.task-detail-workspace > .ticket-workspace-tabs { border-bottom: 1px solid var(--paac-border-medium); margin-bottom: .9rem; padding-bottom: .8rem; }
.task-detail-work-grid, .task-detail-activity-grid { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.task-detail-activity-grid > section { min-width: 0; }
.task-detail-modal .task-field-editor-trigger { font-weight: inherit; max-width: 100%; overflow-wrap: anywhere; white-space: normal; }
.task-detail-modal .ticket-detail-stat-value .task-field-editor-trigger { color: inherit; font-size: inherit; line-height: inherit; }
.task-detail-modal .ticket-detail-meta-value .task-field-editor-trigger { font-weight: inherit; }
.task-detail-clive-panel .chat-box { max-height: 360px; min-height: 140px; }
@media (min-width: 992px) {
    .task-detail-right { align-items: start; grid-template-columns: minmax(0, 1fr) 2.6rem; }
    .task-detail-right > [data-ticket-scroll-section="description"] { grid-column: 1; grid-row: 1; }
    .task-detail-right > [data-ticket-scroll-section="clive"] { grid-column: 1; grid-row: 2; }
    .task-detail-right > [data-ticket-scroll-section="activity"] { grid-column: 1; grid-row: 3; }
    .task-detail-right > .task-detail-section-nav {
        align-self: start;
        grid-column: 2;
        grid-row: 1 / span 3;
        justify-self: center;
        position: sticky;
        right: auto;
        top: .75rem;
        transform: none;
        z-index: 1;
    }
}
@media (max-width: 767.98px) {
    .project-browser-grid, .project-sidekick-edit-grid { grid-template-columns: 1fr; }
    .project-sidekick-task, .project-sidekick-activity > div { flex-direction: column; }
    .project-sidekick-task span:last-child { text-align: left; }
    .project-sidekick-task-state { align-items: flex-start; }
    .project-sidekick-task-state > span { justify-content: flex-start; }
    .task-detail-layout, .task-detail-work-grid, .task-detail-activity-grid { grid-template-columns: 1fr; }
    .task-detail-modal .ticket-detail-modal-action-buttons { display: flex; }
    .project-email-message > summary { grid-template-columns: .55rem minmax(0, 1fr); }
    .project-email-meta { grid-column: 2; white-space: normal; }
}
/* end project and task sidekick */

.impersonation-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0 0 1rem;
    padding: 0.9rem 1.1rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(180, 117, 11, 0.35);
    background: linear-gradient(135deg, rgba(255, 245, 212, 0.98), rgba(255, 229, 167, 0.92));
    box-shadow: 0 12px 30px rgba(94, 62, 0, 0.08);
}

.impersonation-banner-label {
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8a5a00;
}

.impersonation-banner-copy {
    font-size: 0.98rem;
    font-weight: 600;
    color: #4d3500;
}

.m365-login-json-block {
    background: #f8f9fc;
    border: 1px solid #e3e6f0;
    border-radius: 0.35rem;
    color: #3a3b45;
    margin: 0;
    overflow: auto;
    white-space: pre-wrap;
}

@media (max-width: 767.98px) {
    .impersonation-banner {
        flex-direction: column;
        align-items: flex-start;
    }
}









