.hidden { display:none !important; }

.page-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:24px;
}
.page-heading__kicker {
    color:#60a5fa;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.page-heading h1 {
    margin-top:4px;
    color:#f8fafc;
    font-size:30px;
    line-height:1.1;
    font-weight:900;
}
.page-heading p {
    margin-top:6px;
    color:#94a3b8;
    font-size:14px;
}
.metric-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:22px;
}
.metric-tile {
    border-radius:16px;
    border:1px solid rgba(148,163,184,.18);
    padding:16px;
    background:#111827;
    box-shadow:0 14px 34px rgba(2,6,23,.22);
}
.metric-tile span {
    display:block;
    color:#cbd5e1;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
}
.metric-tile strong {
    display:block;
    margin-top:8px;
    color:#fff;
    font-size:30px;
    line-height:1;
}
.metric-blue { background:linear-gradient(135deg,#0284c7,#0f172a); }
.metric-green { background:linear-gradient(135deg,#16a34a,#0f172a); }
.metric-yellow { background:linear-gradient(135deg,#ca8a04,#0f172a); }
.metric-red { background:linear-gradient(135deg,#dc2626,#0f172a); }
.modern-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.modern-card {
    border-radius:16px;
    border:1px solid rgba(148,163,184,.18);
    background:linear-gradient(180deg,rgba(30,41,59,.92),rgba(15,23,42,.96));
    box-shadow:0 16px 36px rgba(2,6,23,.24);
    padding:18px;
}
.modern-card:hover {
    border-color:rgba(96,165,250,.42);
}
.panel-grid {
    display:grid;
    grid-template-columns:minmax(0,380px) minmax(0,1fr);
    gap:18px;
}
.check-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.check-pill {
    display:flex;
    align-items:center;
    gap:8px;
    border-radius:9px;
    border:1px solid rgba(148,163,184,.18);
    background:#0f172a;
    padding:10px;
    color:#cbd5e1;
    font-size:11px;
    font-weight:700;
}
.responsive-actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
@media (max-width:1100px) {
    .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .modern-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .panel-grid { grid-template-columns:1fr; }
}
@media (max-width:640px) {
    .page-heading { align-items:flex-start; flex-direction:column; }
    .metric-grid,.modern-grid,.check-grid { grid-template-columns:1fr; }
    .responsive-actions .app-btn { width:100%; }
}

/* Base visual migrada do layout principal. */
body { font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
    .app-shell {
        background:
            radial-gradient(circle at top left, rgba(37,99,235,.22), transparent 34rem),
            linear-gradient(135deg, #0b1120 0%, #111827 48%, #020617 100%);
        color:#e5edf7;
    }
    .app-card {
        background:linear-gradient(180deg, rgba(30,41,59,.94), rgba(15,23,42,.96));
        border:1px solid rgba(148,163,184,.18);
        border-radius:16px;
        box-shadow:0 18px 45px rgba(0,0,0,.32);
    }
    .app-muted { color:#94a3b8; }
    .app-input { width:100%; border:1px solid rgba(148,163,184,.28); background:#0f172a; color:#e5edf7; border-radius:9px; padding:12px 14px; outline:none; transition:.2s; }
    .app-input::placeholder { color:#64748b; }
    .app-input:focus { border-color:#60a5fa; box-shadow:0 0 0 3px rgba(96,165,250,.18); }
    .app-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:9px; padding:10px 16px; font-weight:700; transition:.2s; }
    .app-btn-primary { background:linear-gradient(135deg,#2563eb,#38bdf8); color:#fff; box-shadow:0 10px 24px rgba(37,99,235,.28); }
    .app-btn-primary:hover { filter:brightness(1.08); transform:translateY(-1px); }
    .app-btn-success { background:#16a34a; color:#fff; box-shadow:0 10px 24px rgba(22,163,74,.18); }
    .app-btn-success:hover { background:#15803d; }
    .app-btn-warning { background:#f59e0b; color:#111827; box-shadow:0 10px 24px rgba(245,158,11,.16); }
    .app-btn-warning:hover { background:#d97706; }
    .app-btn-danger { background:#dc2626; color:#fff; box-shadow:0 10px 24px rgba(220,38,38,.16); }
    .app-btn-danger:hover { background:#b91c1c; }
    .app-btn-secondary { background:#1e293b; color:#cbd5e1; border:1px solid rgba(148,163,184,.18); }
    .app-btn-secondary:hover { background:#334155; color:#fff; }
    .app-alert { border-radius:14px; padding:14px 16px; border:1px solid; font-size:14px; }
    .app-alert-success { background:rgba(22,163,74,.13); border-color:rgba(74,222,128,.32); color:#bbf7d0; }
    .app-alert-error { background:rgba(220,38,38,.14); border-color:rgba(248,113,113,.32); color:#fecaca; }
    .app-alert-info { background:rgba(37,99,235,.16); border-color:rgba(96,165,250,.32); color:#bfdbfe; }
    .table-shell { overflow-x:auto; border-radius:16px; border:1px solid rgba(148,163,184,.18); background:#0f172a; box-shadow:0 18px 45px rgba(0,0,0,.32); }
    .app-table { width:100%; min-width:920px; border-collapse:separate; border-spacing:0; text-align:left; }
    .app-table thead {
        background:linear-gradient(180deg,#1e3a8a,#172554);
        color:#eff6ff;
        font-size:12px;
        text-transform:uppercase;
        letter-spacing:.05em;
        box-shadow:inset 0 -1px 0 rgba(125,211,252,.35);
    }
    .app-table th {
        font-weight:900;
    }
    .app-table th, .app-table td { padding:14px 16px; border-bottom:1px solid rgba(148,163,184,.12); vertical-align:middle; }
    .app-table tbody tr { transition:.2s; }
    .app-table tbody tr:hover { background:rgba(37,99,235,.10); }
    .badge-status {
        display:inline-flex;
        align-items:center;
        min-height:28px;
        border-radius:999px;
        padding:6px 12px;
        font-size:12px;
        font-weight:800;
        border:1px solid;
        white-space:nowrap;
    }
    .badge-status-open { background:#38bdf8; color:#082f49; border-color:#7dd3fc; }
    .badge-status-progress { background:#facc15; color:#422006; border-color:#fde047; }
    .badge-status-waiting { background:#fb923c; color:#431407; border-color:#fdba74; }
    .badge-status-third-party { background:#fbbf24; color:#451a03; border-color:#fcd34d; }
    .badge-status-user-return { background:#c026d3; color:#ffffff; border-color:#e879f9; }
    .badge-status-resolved { background:#22c55e; color:#052e16; border-color:#4ade80; }
    .badge-status-late { background:#ef4444; color:#450a0a; border-color:#f87171; }
    .badge-status-neutral { background:#94a3b8; color:#0f172a; border-color:#cbd5e1; }
    .topic-badge {
        display:inline-flex;
        align-items:center;
        min-height:28px;
        border-radius:999px;
        background:#2563eb;
        color:#eff6ff;
        border:1px solid #60a5fa;
        padding:6px 12px;
        font-size:12px;
        font-weight:800;
    }
    .impact-badge {
        display:inline-flex;
        align-items:center;
        min-height:28px;
        border:1px solid;
        border-radius:999px;
        padding:5px 10px;
        font-size:11px;
        font-weight:900;
        white-space:nowrap;
    }
    .impact-badge-low { color:#166534; background:#dcfce7; border-color:#86efac; }
    .impact-badge-medium { color:#1d4ed8; background:#dbeafe; border-color:#93c5fd; }
    .impact-badge-high { color:#9a3412; background:#ffedd5; border-color:#fdba74; }
    .impact-badge-critical { color:#991b1b; background:#fee2e2; border-color:#fca5a5; }
    .impact-badge-request { color:#6d28d9; background:#ede9fe; border-color:#c4b5fd; }
    .impact-badge-legacy { color:#475569; background:#f1f5f9; border-color:#cbd5e1; }
    .ticket-number {
        color:#2563eb;
        font-weight:900;
        letter-spacing:.04em;
        font-variant-numeric:tabular-nums;
        text-shadow:none;
        white-space:nowrap;
    }
    .ticket-number-lg {
        font-size:.9em;
        vertical-align:middle;
    }
    .ticket-description {
        color:#e2e8f0 !important;
        line-height:1.45;
    }
    .app-shell span.bg-blue-600,
    .app-shell span.bg-green-600,
    .app-shell span.bg-yellow-500,
    .app-shell span.bg-red-600,
    .app-shell span.bg-gray-600,
    .app-shell span.bg-gray-500 {
        display:inline-flex;
        align-items:center;
        min-height:28px;
        border-radius:999px !important;
        padding:6px 12px !important;
        font-size:12px;
        font-weight:800;
        border:1px solid rgba(255,255,255,.16);
    }
    .app-shell span.bg-blue-600 { background:#2563eb !important; color:#eff6ff !important; border-color:#60a5fa !important; }
    .app-shell span.bg-green-600 { background:#22c55e !important; color:#052e16 !important; }
    .app-shell span.bg-yellow-500 { background:#facc15 !important; color:#422006 !important; }
    .app-shell span.bg-red-600 { background:#ef4444 !important; color:#450a0a !important; }
    .app-shell span.bg-gray-600,
    .app-shell span.bg-gray-500 { background:#94a3b8 !important; color:#0f172a !important; }
    /* Compatibilidade visual para views antigas e para utilitarios claros usados nas telas novas. */
    .app-shell .bg-white,
    .app-shell .bg-slate-50,
    .app-shell .bg-slate-100,
    .app-shell .bg-gray-800,
    .app-shell .bg-gray-900,
    .app-shell .bg-gray-950 { background-color:#111827 !important; color:#e5edf7; }
    .app-shell .border-slate-100,
    .app-shell .border-slate-200,
    .app-shell .border-slate-300,
    .app-shell .border-gray-700,
    .app-shell .border-gray-800 { border-color:rgba(148,163,184,.18) !important; }
    .app-shell .text-slate-950,
    .app-shell .text-slate-900,
    .app-shell .text-slate-800,
    .app-shell .text-slate-700 { color:#f8fafc !important; }
    .app-shell .text-slate-600,
    .app-shell .text-slate-500,
    .app-shell .text-gray-300,
    .app-shell .text-gray-400,
    .app-shell .text-gray-500 { color:#94a3b8 !important; }
    .app-shell .text-blue-700 { color:#60a5fa !important; }
    .app-shell .text-blue-600 { color:#93c5fd !important; }
    .app-shell .text-green-600,
    .app-shell .text-green-700 { color:#86efac !important; }
    .app-shell .text-red-600,
    .app-shell .text-red-700 { color:#fca5a5 !important; }
    .app-shell .text-amber-500,
    .app-shell .text-amber-600,
    .app-shell .text-yellow-400 { color:#fde68a !important; }
    .app-shell .bg-red-50,
    .app-shell .bg-red-50\/60 { background-color:rgba(127,29,29,.28) !important; }
    .app-shell .bg-blue-50 { background-color:rgba(30,64,175,.25) !important; }
    .app-shell .bg-green-50 { background-color:rgba(20,83,45,.25) !important; }
    .app-shell .ring-slate-200 { --tw-ring-color:rgba(148,163,184,.18) !important; }
    .app-shell .ring-red-100 { --tw-ring-color:rgba(248,113,113,.24) !important; }
    .app-shell .ring-blue-200 { --tw-ring-color:rgba(96,165,250,.24) !important; }
    .app-shell .ring-green-200 { --tw-ring-color:rgba(74,222,128,.24) !important; }
    .app-shell .divide-slate-100 > :not([hidden]) ~ :not([hidden]) { border-color:rgba(148,163,184,.14) !important; }
    .app-shell input.bg-gray-900,
    .app-shell select.bg-gray-900,
    .app-shell textarea.bg-gray-900,
    .app-shell input.bg-gray-950,
    .app-shell textarea.bg-gray-950 { background:#0f172a !important; color:#e5edf7 !important; border-color:rgba(148,163,184,.28) !important; }
    .app-sidebar { transform:translateX(-100%); }
    .app-sidebar.is-open { transform:translateX(0); }
    .mobile-overlay { display:none; }
    .mobile-overlay.is-open { display:block; }
    .pagination-btn { border:1px solid rgba(148,163,184,.28); background:#1e293b; color:#cbd5e1; border-radius:10px; padding:8px 12px; font-weight:700; }
    .pagination-btn:disabled { opacity:.45; cursor:not-allowed; }
    @media (max-width: 1024px) {
        .app-content { margin-left:0; }
        .app-main { padding:16px; }
    }
    @media (max-width: 760px) {
        .table-shell {
            overflow:visible;
            border:none;
            background:transparent;
            box-shadow:none;
        }
        .app-table {
            min-width:0;
            border-spacing:0 12px;
        }
        .app-table thead {
            display:none;
        }
        .app-table,
        .app-table tbody,
        .app-table tr,
        .app-table td {
            display:block;
            width:100%;
        }
        .app-table tbody tr {
            overflow:hidden;
            border:1px solid rgba(148,163,184,.18);
            border-radius:16px;
            background:linear-gradient(180deg, rgba(30,41,59,.96), rgba(15,23,42,.98));
            box-shadow:0 14px 32px rgba(0,0,0,.22);
        }
        .app-table tbody tr:hover {
            background:linear-gradient(180deg, rgba(30,64,175,.50), rgba(15,23,42,.98));
        }
        .app-table td {
            display:flex;
            align-items:flex-start;
            justify-content:space-between;
            gap:10px;
            padding:12px 14px;
            border-bottom:1px solid rgba(148,163,184,.12);
            text-align:right;
        }
        .app-table td:last-child {
            border-bottom:none;
        }
        .app-table td::before {
            content:attr(data-label);
            flex:0 0 42%;
            color:#94a3b8;
            text-align:left;
            font-size:11px;
            font-weight:900;
            text-transform:uppercase;
            letter-spacing:.04em;
        }
        .app-table td > * {
            min-width:0;
        }
        .app-table td.text-right {
            text-align:right;
        }
        .app-table td[colspan] {
            display:block;
            text-align:center;
        }
        .app-table td[colspan]::before {
            content:'';
            display:none;
        }
    }

/* Estilos migrados de views\auth\login.php. */
@keyframes spin { to { transform: rotate(360deg); } }
.loader { animation: spin 1s linear infinite; }
.brand-logo-tile {
    width:86px;
    height:86px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(145deg,#0f172a,#1d4ed8);
    border:1px solid rgba(125,211,252,.45);
    box-shadow:0 18px 45px rgba(15,23,42,.38), inset 0 1px 0 rgba(255,255,255,.12);
    padding:7px;
}
.brand-logo-img {
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}
.brand-title {
    font-weight:900;
    line-height:1;
    letter-spacing:0;
    color:#fff;
    text-shadow:0 8px 22px rgba(15,23,42,.28);
}
/* Estilos migrados de views\chamados\create.php. */
.ticket-wizard { background:#111827; color:#e5edf8; }
.wizard-progress { display:flex; align-items:center; gap:10px; margin-bottom:28px; }
.wizard-track { flex:1; height:9px; overflow:hidden; border-radius:999px; background:#263247; }
.wizard-track div { height:100%; border-radius:999px; background:#2563eb; transition:.25s ease; }
.wizard-progress span { color:#94a3b8; font-size:12px; font-weight:900; }
.wizard-step h2 { color:#fff; font-size:22px; font-weight:900; }
.wizard-step p { margin:4px 0 20px; color:#94a3b8; font-size:14px; }
.requester-card,.wizard-summary {
    border:1px solid rgba(148,163,184,.18);
    background:#0f172a;
    border-radius:16px;
    padding:16px;
    margin-bottom:18px;
}
.requester-card span,.wizard-summary span,label span { display:block; color:#94a3b8; font-size:12px; font-weight:900; text-transform:uppercase; }
.requester-card strong { display:block; margin-top:4px; color:#fff; }
.requester-card small,label small { display:block; margin-top:4px; color:#94a3b8; }
.wizard-input {
    width:100%;
    margin-top:7px;
    border-radius:9px;
    border:1px solid rgba(148,163,184,.28);
    background:#0f172a;
    color:#e5edf8;
    padding:13px 14px;
    outline:none;
}
.wizard-input:focus { border-color:#60a5fa; box-shadow:0 0 0 3px rgba(37,99,235,.24); }
.topic-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.topic-card {
    min-height:76px;
    border-radius:16px;
    border:1px solid rgba(148,163,184,.20);
    background:#0f172a;
    color:#dbeafe;
    padding:14px;
    font-weight:900;
    text-align:center;
    transition:.18s ease;
}
.topic-card:hover,.topic-card.active { background:#2563eb; border-color:#60a5fa; color:#fff; transform:translateY(-1px); }
.wizard-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.wizard-summary div { border-radius:9px; background:#182235; padding:12px; }
.wizard-summary strong { display:block; margin-top:5px; color:#fff; word-break:break-word; }
@media (max-width:760px) {
    .topic-grid,.wizard-summary { grid-template-columns:1fr; }
}


/* Estilos migrados de views\chamados\show.php. */
.ticket-chat-card {
    background:#172033;
    box-shadow:0 18px 42px rgba(0,0,0,.22);
}
.ticket-chat-body {
    background:#1f2a3d;
}
.chat-author {
    color:#60a5fa;
}
.chat-message-list {
    display:grid;
    gap:10px;
}
.chat-empty-state {
    display:flex;
    min-height:150px;
    align-items:center;
    justify-content:center;
    border:1px dashed rgba(148,163,184,.28);
    border-radius:9px;
    color:#94a3b8;
    font-size:.85rem;
    text-align:center;
    padding:16px;
}
.chat-message {
    display:flex;
}
.chat-message-mine {
    justify-content:flex-end;
}
.chat-message-other,
.chat-message-system {
    justify-content:flex-start;
}
.chat-bubble {
    max-width:min(82%, 680px);
    border-radius:14px;
    padding:9px 11px;
    box-shadow:0 8px 18px rgba(0,0,0,.14);
}
.chat-message-mine .chat-bubble {
    background:#2563eb;
    color:#fff;
    border-bottom-right-radius:6px;
}
.chat-message-other .chat-bubble {
    background:#111827;
    color:#e5edf7;
    border:1px solid rgba(148,163,184,.22);
    border-bottom-left-radius:6px;
}
.chat-message-system .chat-bubble {
    background:#172554;
    color:#dbeafe;
    border:1px solid rgba(96,165,250,.28);
}
.chat-meta {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:5px 10px;
    margin-bottom:5px;
    font-size:.68rem;
    color:#cbd5e1;
}
.chat-message-mine .chat-meta {
    color:#dbeafe;
}
.chat-author-line {
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px;
    font-weight:800;
}
.chat-role {
    border-radius:999px;
    background:rgba(255,255,255,.12);
    padding:1px 6px;
    font-size:.62rem;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.chat-text {
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    font-size:.88rem;
    line-height:1.45;
}
.chat-attachments {
    display:grid;
    gap:7px;
    margin-top:8px;
}
.chat-attachment-item {
    display:grid;
    gap:6px;
}
.chat-image-link {
    display:block;
}
.chat-image-preview {
    max-height:130px;
    max-width:100%;
    border-radius:9px;
    border:1px solid rgba(255,255,255,.14);
    object-fit:contain;
}
.chat-attachment-link {
    display:inline-flex;
    width:fit-content;
    max-width:100%;
    align-items:center;
    gap:6px;
    border-radius:9px;
    background:rgba(15,23,42,.62);
    color:#bfdbfe;
    padding:6px 8px;
    font-size:.78rem;
    font-weight:800;
    overflow-wrap:anywhere;
}
.chat-attachment-link span {
    flex:0 0 auto;
    border-radius:7px;
    background:rgba(15,23,42,.78);
    padding:3px 6px;
    font-size:.66rem;
    color:#dbeafe;
}
.chat-new-indicator {
    position:sticky;
    bottom:14px;
    z-index:4;
    width:max-content;
    margin:-46px auto 14px;
    cursor:pointer;
    border-radius:999px;
    background:#2563eb;
    color:#fff;
    padding:8px 14px;
    font-size:.8rem;
    font-weight:900;
    box-shadow:0 12px 26px rgba(37,99,235,.28);
}
.chat-compose .app-input {
    font-size:.86rem;
}
.chat-send-btn {
    min-height:38px;
    white-space:nowrap;
}
@media (max-width:760px) {
    .ticket-chat-body {
        height:50vh !important;
        padding:12px !important;
    }
    .chat-bubble {
        max-width:94%;
    }
    .chat-meta {
        align-items:flex-start;
        flex-direction:column;
    }
}
.ticket-timeline {
    position:relative;
    display:grid;
    gap:16px;
}
.ticket-timeline::before {
    content:"";
    position:absolute;
    left:17px;
    top:4px;
    bottom:4px;
    width:2px;
    background:rgba(96,165,250,.25);
}
.timeline-item {
    position:relative;
    display:grid;
    grid-template-columns:36px 1fr;
    gap:12px;
}
.timeline-dot {
    z-index:1;
    width:36px;
    height:36px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:2px solid #111827;
    color:#fff;
    font-size:10px;
    font-weight:900;
    box-shadow:0 10px 24px rgba(2,6,23,.28);
}
.timeline-content {
    border-radius:14px;
    border:1px solid rgba(148,163,184,.16);
    background:#0f172a;
    padding:12px;
}
.timeline-title {
    color:#fff;
    font-size:14px;
    font-weight:900;
}
.timeline-user {
    margin-top:2px;
    color:#60a5fa;
    font-size:12px;
    font-weight:700;
}
.timeline-desc {
    margin-top:7px;
    color:#cbd5e1;
    font-size:11px;
    line-height:1.45;
}
.timeline-blue { background:#2563eb; }
.timeline-yellow { background:#ca8a04; }
.timeline-orange { background:#f97316; }
.timeline-green { background:#16a34a; }
.timeline-red { background:#dc2626; }
.timeline-slate { background:#475569; }


/* Estilos migrados de views\chamados\content.php. */
.ticket-stats {
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:12px;
}
.ticket-stat-card {
    display:block;
    border-radius:16px;
    padding:16px;
    border:1px solid rgba(148,163,184,.22);
    background:#111827;
    box-shadow:0 12px 28px rgba(2,6,23,.18);
    transition:.18s ease;
}
.ticket-stat-card:hover {
    transform:translateY(-2px);
    border-color:rgba(96,165,250,.55);
}
.ticket-stat-card span {
    display:block;
    font-size:12px;
    font-weight:900;
    color:#cbd5e1;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.ticket-stat-card strong {
    display:block;
    margin-top:8px;
    font-size:30px;
    line-height:1;
    color:#fff;
}
.ticket-stat-blue { background:linear-gradient(135deg,#0284c7,#0f172a); }
.ticket-stat-yellow { background:linear-gradient(135deg,#ca8a04,#0f172a); }
.ticket-stat-green { background:linear-gradient(135deg,#16a34a,#0f172a); }
.ticket-stat-red { background:linear-gradient(135deg,#dc2626,#0f172a); }
.ticket-stat-slate { background:linear-gradient(135deg,#475569,#0f172a); }
@media (max-width: 1024px) {
    .ticket-stats { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
    .ticket-stats { grid-template-columns:1fr; }
}


/* Estilos migrados de views\chamados\sucesso.php. */
.ticket-success-hero {
    padding:34px 24px;
    text-align:center;
    background:linear-gradient(135deg,#2563eb,#0f172a);
    color:#fff;
}
.ticket-success-hero p {
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    color:#bfdbfe;
}
.ticket-success-hero h1 {
    margin-top:6px;
    font-size:44px;
    font-weight:900;
}
.ticket-success-hero span {
    display:block;
    margin-top:8px;
    color:#dbeafe;
}
.success-info {
    border-radius:14px;
    border:1px solid rgba(148,163,184,.18);
    background:#0f172a;
    padding:14px;
}
.success-info span {
    display:block;
    color:#94a3b8;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
}
.success-info strong {
    display:block;
    margin-top:6px;
    color:#fff;
    word-break:break-word;
}


/* Ajuste visual. */
.theme-toggle {
    background:#1e293b;
    color:#cbd5e1;
    border:1px solid rgba(148,163,184,.22);
}
.theme-toggle:hover {
    background:#334155;
    color:#fff;
}

html[data-theme="light"] .app-shell {
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.12), transparent 34rem),
        linear-gradient(135deg, #f8fafc 0%, #eef5ff 48%, #ffffff 100%);
    color:#0f172a;
}
html[data-theme="light"] .app-sidebar {
    background:#ffffff !important;
    border-color:#dbeafe !important;
    box-shadow:0 20px 45px rgba(15,23,42,.10) !important;
}
html[data-theme="light"] header {
    background:rgba(255,255,255,.86) !important;
    border-color:#dbeafe !important;
    box-shadow:0 14px 32px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .app-card,
html[data-theme="light"] .modern-card,
html[data-theme="light"] .ticket-wizard,
html[data-theme="light"] .ticket-stat-card,
html[data-theme="light"] .metric-tile {
    background:#ffffff !important;
    border-color:#dbeafe !important;
    color:#0f172a !important;
    box-shadow:0 16px 36px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .table-shell {
    background:#ffffff !important;
    border-color:#dbeafe !important;
    box-shadow:0 16px 36px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .app-table th,
html[data-theme="light"] .app-table td {
    border-color:#e2e8f0 !important;
}
html[data-theme="light"] .app-table tbody tr:hover {
    background:#eff6ff !important;
}
html[data-theme="light"] .app-input,
html[data-theme="light"] .wizard-input,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#cbd5e1 !important;
}
html[data-theme="light"] .app-input::placeholder,
html[data-theme="light"] .wizard-input::placeholder {
    color:#94a3b8 !important;
}
html[data-theme="light"] .app-btn-secondary,
html[data-theme="light"] .pagination-btn {
    background:#f1f5f9 !important;
    color:#1e293b !important;
    border-color:#cbd5e1 !important;
}
html[data-theme="light"] .app-btn-secondary:hover,
html[data-theme="light"] .pagination-btn:hover {
    background:#e0f2fe !important;
    color:#075985 !important;
}
html[data-theme="light"] .theme-toggle {
    background:#eff6ff;
    color:#1d4ed8;
    border-color:#bfdbfe;
}
html[data-theme="light"] .theme-toggle:hover {
    background:#dbeafe;
    color:#1e40af;
}
html[data-theme="light"] .app-sidebar a:not(.bg-blue-600):not([href*="logout"]) {
    color:#334155 !important;
}
html[data-theme="light"] .app-sidebar a:not(.bg-blue-600):not([href*="logout"]):hover {
    background:#eff6ff !important;
    color:#1d4ed8 !important;
}
html[data-theme="light"] .app-sidebar .bg-slate-900,
html[data-theme="light"] .app-sidebar .bg-slate-900\/70 {
    background:#f8fafc !important;
    color:#0f172a !important;
    border-color:#dbeafe !important;
    --tw-ring-color:#dbeafe !important;
}
html[data-theme="light"] .app-sidebar .sidebar-logo-tile,
html[data-theme="light"] .app-sidebar .sidebar-logo-tile.bg-slate-900 {
    background:linear-gradient(145deg,#0f172a,#1d4ed8) !important;
    border:1px solid rgba(37,99,235,.35) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.20) !important;
    --tw-ring-color:rgba(96,165,250,.55) !important;
}
html[data-theme="light"] .app-sidebar .sidebar-logo-img {
    opacity:1 !important;
    filter:drop-shadow(0 2px 5px rgba(15,23,42,.25));
}
html[data-theme="light"] .app-shell .bg-white,
html[data-theme="light"] .app-shell .bg-slate-50,
html[data-theme="light"] .app-shell .bg-slate-100,
html[data-theme="light"] .app-shell .bg-gray-800,
html[data-theme="light"] .app-shell .bg-gray-900,
html[data-theme="light"] .app-shell .bg-gray-950,
html[data-theme="light"] .app-shell .bg-slate-900,
html[data-theme="light"] .app-shell .bg-slate-900\/70,
html[data-theme="light"] .app-shell .bg-slate-950,
html[data-theme="light"] .app-shell .bg-slate-950\/70,
html[data-theme="light"] .app-shell .bg-slate-950\/80 {
    background-color:#ffffff !important;
    color:#0f172a !important;
}
html[data-theme="light"] .app-shell .bg-slate-950\/70,
html[data-theme="light"] .app-shell .bg-slate-900\/70 {
    background-color:#f8fafc !important;
}
html[data-theme="light"] .app-shell .text-white,
html[data-theme="light"] .app-shell .text-slate-950,
html[data-theme="light"] .app-shell .text-slate-900,
html[data-theme="light"] .app-shell .text-slate-800,
html[data-theme="light"] .app-shell .text-slate-700,
html[data-theme="light"] .app-shell .text-slate-100 {
    color:#0f172a !important;
}
html[data-theme="light"] .app-shell .text-slate-600,
html[data-theme="light"] .app-shell .text-slate-500,
html[data-theme="light"] .app-shell .text-slate-400,
html[data-theme="light"] .app-shell .text-gray-300,
html[data-theme="light"] .app-shell .text-gray-400,
html[data-theme="light"] .app-shell .text-gray-500 {
    color:#64748b !important;
}
html[data-theme="light"] .app-shell .text-blue-700,
html[data-theme="light"] .app-shell .text-blue-600,
html[data-theme="light"] .app-shell .text-blue-300 {
    color:#2563eb !important;
}
html[data-theme="light"] .app-btn-primary,
html[data-theme="light"] .app-btn-success,
html[data-theme="light"] .app-btn-danger,
html[data-theme="light"] .app-shell a.bg-blue-600,
html[data-theme="light"] .app-shell .bg-blue-600,
html[data-theme="light"] .app-shell .bg-red-600,
html[data-theme="light"] .ticket-success-hero,
html[data-theme="light"] .ticket-success-hero *,
html[data-theme="light"] .ticket-stat-card,
html[data-theme="light"] .ticket-stat-card *,
html[data-theme="light"] .metric-tile,
html[data-theme="light"] .metric-tile * {
    color:#ffffff !important;
}
html[data-theme="light"] .app-btn-warning {
    color:#111827 !important;
}
html[data-theme="light"] .app-shell .border-slate-700,
html[data-theme="light"] .app-shell .border-slate-700\/60,
html[data-theme="light"] .app-shell .border-slate-700\/70,
html[data-theme="light"] .app-shell .border-slate-800,
html[data-theme="light"] .app-shell .border-gray-700,
html[data-theme="light"] .app-shell .border-gray-800 {
    border-color:#dbeafe !important;
}
html[data-theme="light"] .requester-card,
html[data-theme="light"] .wizard-summary,
html[data-theme="light"] .wizard-summary div,
html[data-theme="light"] .topic-card,
html[data-theme="light"] .success-info,
html[data-theme="light"] .timeline-content,
html[data-theme="light"] .check-pill {
    background:#f8fafc !important;
    border-color:#dbeafe !important;
    color:#0f172a !important;
}
html[data-theme="light"] .topic-card:hover,
html[data-theme="light"] .topic-card.active {
    background:#2563eb !important;
    border-color:#60a5fa !important;
    color:#ffffff !important;
}
html[data-theme="light"] .ticket-chat-card,
html[data-theme="light"] .ticket-chat-body {
    background:#ffffff !important;
    border-color:#dbeafe !important;
}
html[data-theme="light"] .ticket-chat-card {
    box-shadow:0 18px 38px rgba(15,23,42,.12) !important;
}
html[data-theme="light"] .ticket-chat-body {
    background:#eef4ff !important;
}
html[data-theme="light"] .ticket-chat-body .bg-blue-600 {
    background:#2563eb !important;
    color:#ffffff !important;
    border:1px solid #1d4ed8 !important;
    box-shadow:0 10px 22px rgba(37,99,235,.18) !important;
}
html[data-theme="light"] .ticket-chat-body .bg-slate-900 {
    background:#ffffff !important;
    color:#0f172a !important;
    border:1px solid #bfdbfe !important;
    box-shadow:0 10px 22px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .ticket-chat-body .text-slate-400,
html[data-theme="light"] .ticket-chat-body .text-blue-100 {
    color:#475569 !important;
}
html[data-theme="light"] .ticket-chat-body .chat-author {
    color:#1d4ed8 !important;
    font-weight:800;
}
html[data-theme="light"] .ticket-chat-body p,
html[data-theme="light"] .ticket-chat-body span {
    text-shadow:none !important;
}
html[data-theme="light"] .ticket-chat-body .bg-slate-800 {
    background:#e0ecff !important;
    color:#1d4ed8 !important;
    border:1px solid #bfdbfe !important;
}
html[data-theme="light"] .ticket-chat-body .bg-slate-950\/40 {
    background:#dbeafe !important;
    color:#1e3a8a !important;
}
html[data-theme="light"] .ticket-chat-card form {
    background:#f8fbff !important;
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .chat-empty-state {
    border-color:#bfdbfe !important;
    color:#475569 !important;
    background:#f8fbff !important;
}
html[data-theme="light"] .chat-message-mine .chat-bubble {
    background:#2563eb !important;
    color:#ffffff !important;
    border:1px solid #1d4ed8 !important;
    box-shadow:0 10px 22px rgba(37,99,235,.18) !important;
}
html[data-theme="light"] .chat-message-other .chat-bubble {
    background:#ffffff !important;
    color:#0f172a !important;
    border:1px solid #bfdbfe !important;
    box-shadow:0 10px 22px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .chat-message-system .chat-bubble {
    background:#e0ecff !important;
    color:#1e3a8a !important;
    border:1px solid #93c5fd !important;
}
html[data-theme="light"] .chat-meta {
    color:#475569 !important;
}
html[data-theme="light"] .chat-message-mine .chat-meta {
    color:#dbeafe !important;
}
html[data-theme="light"] .chat-author {
    color:#1d4ed8 !important;
}
html[data-theme="light"] .chat-message-mine .chat-author {
    color:#ffffff !important;
}
html[data-theme="light"] .chat-role {
    background:rgba(37,99,235,.12) !important;
    color:#1e3a8a !important;
}
html[data-theme="light"] .chat-message-mine .chat-role {
    background:rgba(255,255,255,.22) !important;
    color:#eff6ff !important;
}
html[data-theme="light"] .chat-attachment-link {
    background:#e0ecff !important;
    color:#1d4ed8 !important;
    border:1px solid #bfdbfe !important;
}
html[data-theme="light"] .chat-attachment-link span {
    background:#dbeafe !important;
    color:#1e3a8a !important;
}
html[data-theme="light"] .chat-image-preview {
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .ticket-timeline::before {
    background:#bfdbfe;
}
html[data-theme="light"] .timeline-dot {
    border-color:#ffffff;
}
html[data-theme="light"] .ticket-success-hero {
    border-color:rgba(29,78,216,.22) !important;
    background:
        radial-gradient(circle at top left,rgba(125,211,252,.28),transparent 20rem),
        linear-gradient(135deg,#0b5ed7,#1877f2 58%,#38a3ff) !important;
    box-shadow:0 18px 36px rgba(37,99,235,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
html[data-theme="light"] .ticket-stat-blue,
html[data-theme="light"] .ticket-stat-yellow,
html[data-theme="light"] .ticket-stat-green,
html[data-theme="light"] .ticket-stat-red,
html[data-theme="light"] .ticket-stat-slate,
html[data-theme="light"] .metric-blue,
html[data-theme="light"] .metric-green,
html[data-theme="light"] .metric-yellow,
html[data-theme="light"] .metric-red {
    box-shadow:0 16px 34px rgba(15,23,42,.10) !important;
}
html[data-theme="light"] .mobile-overlay {
    background:rgba(15,23,42,.35) !important;
}
@media (max-width: 760px) {
    html[data-theme="light"] .app-table tbody tr {
        background:#ffffff !important;
        border-color:#dbeafe !important;
        box-shadow:0 14px 28px rgba(15,23,42,.08) !important;
    }
}

/* Deve ficar depois de todas as regras do tema claro para os cards nao sumirem. */
html[data-theme="light"] .ticket-stat-card.ticket-stat-blue,
html[data-theme="light"] .metric-tile.metric-blue {
    background:linear-gradient(135deg,#0284c7,#0f67d6 58%,#0757bd) !important;
    border-color:#7dd3fc !important;
}
html[data-theme="light"] .ticket-stat-card.ticket-stat-yellow,
html[data-theme="light"] .metric-tile.metric-yellow {
    background:linear-gradient(135deg,#f59e0b,#ca8a04 58%,#92400e) !important;
    border-color:#fde68a !important;
}
html[data-theme="light"] .ticket-stat-card.ticket-stat-green,
html[data-theme="light"] .metric-tile.metric-green {
    background:linear-gradient(135deg,#22c55e,#15803d 58%,#166534) !important;
    border-color:#86efac !important;
}
html[data-theme="light"] .ticket-stat-card.ticket-stat-red,
html[data-theme="light"] .metric-tile.metric-red {
    background:linear-gradient(135deg,#ef4444,#b91c1c 58%,#7f1d1d) !important;
    border-color:#fca5a5 !important;
}
html[data-theme="light"] .ticket-stat-card.ticket-stat-slate {
    background:linear-gradient(135deg,#64748b,#334155 58%,#0f172a) !important;
    border-color:#cbd5e1 !important;
}
html[data-theme="light"] .ticket-stat-card span,
html[data-theme="light"] .ticket-stat-card strong,
html[data-theme="light"] .metric-tile span,
html[data-theme="light"] .metric-tile strong {
    color:#ffffff !important;
}
html[data-theme="light"] .ticket-card.modern-card {
    background:#ffffff !important;
    border-color:#dbeafe !important;
}
html[data-theme="light"] .ticket-description {
    color:#1e293b !important;
    font-weight:700;
}
html[data-theme="light"] .ticket-card .text-slate-400,
html[data-theme="light"] .ticket-card .text-slate-500 {
    color:#475569 !important;
}

/* Abertura de ticket no tema claro. */
html[data-theme="light"] .ticket-wizard {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .wizard-step h2 {
    color:#0f172a !important;
}
html[data-theme="light"] .wizard-step p {
    color:#475569 !important;
    font-weight:600;
}
html[data-theme="light"] .wizard-progress span,
html[data-theme="light"] .requester-card span,
html[data-theme="light"] .wizard-summary span,
html[data-theme="light"] .ticket-wizard label span {
    color:#2563eb !important;
}
html[data-theme="light"] .wizard-track {
    background:#dbeafe !important;
}
html[data-theme="light"] .requester-card,
html[data-theme="light"] .wizard-summary {
    background:#f8fafc !important;
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .requester-card strong,
html[data-theme="light"] .wizard-summary strong {
    color:#0f172a !important;
}
html[data-theme="light"] .requester-card small,
html[data-theme="light"] .ticket-wizard label small {
    color:#475569 !important;
    font-weight:600;
}
html[data-theme="light"] .wizard-summary div {
    background:#eff6ff !important;
    border:1px solid #dbeafe;
}
html[data-theme="light"] .topic-card {
    background:#f8fafc !important;
    color:#1e293b !important;
    border-color:#bfdbfe !important;
    box-shadow:0 10px 24px rgba(15,23,42,.06);
}
html[data-theme="light"] .topic-card:hover,
html[data-theme="light"] .topic-card.active {
    background:#2563eb !important;
    border-color:#1d4ed8 !important;
    color:#ffffff !important;
}
html[data-theme="light"] .wizard-input {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#94a3b8 !important;
}
html[data-theme="light"] .wizard-input:focus {
    border-color:#2563eb !important;
    box-shadow:0 0 0 3px rgba(37,99,235,.16) !important;
}
html[data-theme="light"] .wizard-input::placeholder {
    color:#64748b !important;
}


/* Ajuste visual. */
html[data-theme="light"] .users-list-meta,html[data-theme="light"] .users-list-meta p {
    color:#475569 !important;
    font-weight:600;
}
html[data-theme="light"] .users-list-meta .text-slate-200 {
    color:#0f172a !important;
}
html[data-theme="light"] .app-table .user-email,
html[data-theme="light"] .app-table .user-sector {
    color:#1e293b !important;
}
html[data-theme="light"] .app-table .user-date,
html[data-theme="light"] .app-table td .text-slate-500 {
    color:#475569 !important;
}
.user-password-summary {
    background:#2563eb;
    color:#ffffff;
    box-shadow:0 8px 18px rgba(37,99,235,.18);
}
.user-password-summary:hover {
    background:#1d4ed8;
}
html[data-theme="light"] .user-password-summary {
    background:#2563eb !important;
    color:#ffffff !important;
}
html[data-theme="light"] .user-password-form {
    background:#eff6ff !important;
    border:1px solid #bfdbfe;
    --tw-ring-color:#bfdbfe !important;
}
html[data-theme="light"] .user-password-form input {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#93c5fd !important;
}
html[data-theme="light"] .user-password-form input::placeholder {
    color:#64748b !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-footer {
    color:#334155 !important;
}
html[data-theme="light"] .app-footer p:first-child {
    color:#1d4ed8 !important;
    font-weight:900;
}
html[data-theme="light"] .app-footer p:last-child {
    color:#475569 !important;
    font-weight:700;
}
html[data-theme="light"] .institutional-footer {
    background:#eff6ff !important;
    border:1px solid #bfdbfe;
    color:#475569 !important;
    --tw-ring-color:#bfdbfe !important;
}
html[data-theme="light"] .institutional-footer p:first-child {
    color:#1d4ed8 !important;
    font-weight:900;
}
html[data-theme="light"] .institutional-footer p:last-child {
    color:#334155 !important;
    font-weight:700;
}

/* Refinamento final do tema claro. */
html[data-theme="light"] {
    color-scheme:light;
}
html[data-theme="light"] body {
    background:#f3f7fc !important;
    color:#0f172a !important;
}
html[data-theme="light"] .app-shell {
    background:
        radial-gradient(circle at top left, rgba(59,130,246,.16), transparent 30rem),
        radial-gradient(circle at bottom right, rgba(14,165,233,.10), transparent 28rem),
        linear-gradient(135deg,#f8fbff 0%,#eef6ff 46%,#ffffff 100%) !important;
}
html[data-theme="light"] header,
html[data-theme="light"] .app-topbar {
    background:rgba(255,255,255,.92) !important;
    border-color:#c7ddff !important;
    color:#0f172a !important;
    backdrop-filter:blur(14px);
}
html[data-theme="light"] .app-sidebar {
    background:linear-gradient(180deg,#ffffff 0%,#f6faff 100%) !important;
    border-color:#c7ddff !important;
}
html[data-theme="light"] .app-sidebar,
html[data-theme="light"] .app-sidebar p,
html[data-theme="light"] .app-sidebar span {
    color:#334155 !important;
}
html[data-theme="light"] .app-sidebar strong,
html[data-theme="light"] .app-sidebar h1,
html[data-theme="light"] .app-sidebar h2,
html[data-theme="light"] .app-sidebar .font-bold,
html[data-theme="light"] .app-sidebar .font-extrabold {
    color:#0f172a !important;
}
html[data-theme="light"] .app-sidebar a.bg-blue-600,
html[data-theme="light"] .app-sidebar .bg-blue-600 {
    background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
    color:#ffffff !important;
    box-shadow:0 10px 22px rgba(37,99,235,.24) !important;
}
html[data-theme="light"] .app-card,
html[data-theme="light"] .modern-card,
html[data-theme="light"] .table-shell,
html[data-theme="light"] .ticket-wizard {
    background:rgba(255,255,255,.96) !important;
    border:1px solid #cfe2ff !important;
    box-shadow:0 14px 32px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .app-card h1,
html[data-theme="light"] .app-card h2,
html[data-theme="light"] .app-card h3,
html[data-theme="light"] .modern-card h1,
html[data-theme="light"] .modern-card h2,
html[data-theme="light"] .modern-card h3 {
    color:#0f172a !important;
}
html[data-theme="light"] .app-card p,
html[data-theme="light"] .modern-card p,
html[data-theme="light"] .ticket-wizard p {
    color:#475569 !important;
}
html[data-theme="light"] .app-card strong,
html[data-theme="light"] .modern-card strong,
html[data-theme="light"] .ticket-wizard strong {
    color:#111827 !important;
}
html[data-theme="light"] .app-shell .text-slate-500,
html[data-theme="light"] .app-shell .text-slate-400,
html[data-theme="light"] .app-shell .text-gray-400,
html[data-theme="light"] .app-shell .text-gray-500 {
    color:#52637a !important;
}
html[data-theme="light"] .app-shell .text-slate-300,
html[data-theme="light"] .app-shell .text-slate-200 {
    color:#334155 !important;
}
html[data-theme="light"] .app-input,
html[data-theme="light"] .wizard-input,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#9fb9dc !important;
    box-shadow:0 1px 0 rgba(15,23,42,.03) !important;
}
html[data-theme="light"] .app-input:focus,
html[data-theme="light"] .wizard-input:focus,
html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus {
    border-color:#2563eb !important;
    box-shadow:0 0 0 3px rgba(37,99,235,.16) !important;
    outline:none !important;
}
html[data-theme="light"] .app-input::placeholder,
html[data-theme="light"] .wizard-input::placeholder,
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder {
    color:#64748b !important;
}
html[data-theme="light"] .app-table {
    color:#0f172a !important;
}
html[data-theme="light"] .app-table thead,
html[data-theme="light"] .app-table th {
    background:#eaf3ff !important;
    color:#17345f !important;
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .app-table td {
    color:#1e293b !important;
}
html[data-theme="light"] .app-table tbody tr {
    background:#ffffff !important;
}
html[data-theme="light"] .app-table tbody tr:nth-child(even) {
    background:#f8fbff !important;
}
html[data-theme="light"] .app-table tbody tr:hover {
    background:#eaf3ff !important;
}
html[data-theme="light"] .ticket-number {
    color:#0ea5e9 !important;
    text-shadow:none !important;
}
html[data-theme="light"] .topic-badge {
    background:#eaf3ff !important;
    border:1px solid #bfdbfe !important;
    color:#1d4ed8 !important;
}
html[data-theme="light"] .ticket-description,
html[data-theme="light"] .ticket-card p,
html[data-theme="light"] .ticket-card td,
html[data-theme="light"] .ticket-card span:not(.badge-status):not(.topic-badge) {
    text-shadow:none !important;
}
html[data-theme="light"] .ticket-description {
    color:#1e293b !important;
    font-weight:700 !important;
}
html[data-theme="light"] .ticket-chat-card {
    background:#ffffff !important;
    border-color:#bfd7fb !important;
    box-shadow:0 16px 34px rgba(15,23,42,.10) !important;
}
html[data-theme="light"] .ticket-chat-card > .flex {
    background:#f8fbff !important;
    border-color:#cfe2ff !important;
}
html[data-theme="light"] .ticket-chat-card h2 {
    color:#0f172a !important;
}
html[data-theme="light"] .ticket-chat-card p,
html[data-theme="light"] .ticket-chat-card label span {
    color:#475569 !important;
}
html[data-theme="light"] .ticket-chat-body {
    background:#eef5ff !important;
}
html[data-theme="light"] .chat-message-other .chat-bubble {
    background:#ffffff !important;
    color:#0f172a !important;
    border-color:#b8d5fb !important;
}
html[data-theme="light"] .chat-message-other .chat-text,
html[data-theme="light"] .chat-message-system .chat-text {
    color:#172033 !important;
}
html[data-theme="light"] .chat-message-mine .chat-text,
html[data-theme="light"] .chat-message-mine .chat-meta,
html[data-theme="light"] .chat-message-mine .chat-author {
    color:#ffffff !important;
}
html[data-theme="light"] .chat-compose {
    background:#f8fbff !important;
}
html[data-theme="light"] .timeline-content,
html[data-theme="light"] .success-info,
html[data-theme="light"] .requester-card,
html[data-theme="light"] .wizard-summary,
html[data-theme="light"] .wizard-summary div {
    background:#f8fbff !important;
    border-color:#cfe2ff !important;
}
html[data-theme="light"] .timeline-desc,
html[data-theme="light"] .timeline-user {
    color:#475569 !important;
}
html[data-theme="light"] .app-alert {
    box-shadow:0 10px 24px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] .app-alert-success {
    background:#ecfdf5 !important;
    border-color:#86efac !important;
    color:#166534 !important;
}
html[data-theme="light"] .app-alert-error {
    background:#fef2f2 !important;
    border-color:#fca5a5 !important;
    color:#991b1b !important;
}
html[data-theme="light"] .app-alert-warning {
    background:#fffbeb !important;
    border-color:#fcd34d !important;
    color:#92400e !important;
}
html[data-theme="light"] .pagination-btn {
    background:#ffffff !important;
    color:#1e293b !important;
    border-color:#b8d5fb !important;
}
html[data-theme="light"] .pagination-btn.bg-blue-600,
html[data-theme="light"] .pagination-btn[aria-current="page"] {
    background:#2563eb !important;
    color:#ffffff !important;
    border-color:#2563eb !important;
}


/* Ajuste visual. */
.app-table thead,
.app-table th,
html[data-theme="light"] .app-table thead,
html[data-theme="light"] .app-table th {
    background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
    color:#ffffff !important;
    border-color:#1d4ed8 !important;
}
.app-table th,
html[data-theme="light"] .app-table th {
    font-weight:900 !important;
    letter-spacing:.04em;
    text-shadow:0 1px 1px rgba(15,23,42,.18);
}
.app-table thead th:first-child {
    border-top-left-radius:14px;
}
.app-table thead th:last-child {
    border-top-right-radius:14px;
}

/* Login no tema claro. */
html[data-theme="light"] body.login-theme {
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.20), transparent 28rem),
        radial-gradient(circle at bottom right, rgba(14,165,233,.16), transparent 26rem),
        linear-gradient(135deg,#f8fbff 0%,#eaf3ff 48%,#ffffff 100%) !important;
    color:#0f172a !important;
}
html[data-theme="light"] body.login-theme > div {
    background:
        radial-gradient(circle at 50% 0%, rgba(37,99,235,.18), transparent 30rem),
        linear-gradient(135deg,#f8fbff 0%,#edf6ff 52%,#ffffff 100%) !important;
}
html[data-theme="light"] body.login-theme main > div {
    filter:none;
}
html[data-theme="light"] body.login-theme .brand-logo-tile {
    width:96px;
    height:96px;
    background:linear-gradient(145deg,#ffffff,#eaf3ff) !important;
    border:1px solid #bfdbfe !important;
    box-shadow:0 18px 38px rgba(37,99,235,.18), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
html[data-theme="light"] body.login-theme .brand-logo-img {
    opacity:1 !important;
    filter:drop-shadow(0 5px 10px rgba(15,23,42,.18));
}
html[data-theme="light"] body.login-theme .brand-title {
    color:#0f3d86 !important;
    text-shadow:none !important;
}
html[data-theme="light"] body.login-theme .text-blue-700 {
    color:#1d4ed8 !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl {
    background:rgba(255,255,255,.94) !important;
    border-color:#bfdbfe !important;
    box-shadow:0 24px 60px rgba(37,99,235,.18), 0 8px 24px rgba(15,23,42,.08) !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl h2 {
    color:#0f172a !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl p {
    color:#475569 !important;
}
html[data-theme="light"] body.login-theme label {
    color:#1e3a8a !important;
}
html[data-theme="light"] body.login-theme input[type="email"],
html[data-theme="light"] body.login-theme input[type="password"] {
    background:#f8fbff !important;
    border-color:#a9c8f5 !important;
    color:#0f172a !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
html[data-theme="light"] body.login-theme input[type="email"]:focus,
html[data-theme="light"] body.login-theme input[type="password"]:focus {
    background:#ffffff !important;
    border-color:#2563eb !important;
    box-shadow:0 0 0 4px rgba(37,99,235,.15) !important;
}
html[data-theme="light"] body.login-theme input[type="checkbox"] {
    accent-color:#2563eb;
}
html[data-theme="light"] body.login-theme button#btn {
    background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
    color:#ffffff !important;
    box-shadow:0 16px 34px rgba(37,99,235,.30) !important;
}
html[data-theme="light"] body.login-theme button#btn:hover {
    filter:brightness(1.05);
    transform:translateY(-1px);
}
html[data-theme="light"] body.login-theme a {
    color:#1d4ed8 !important;
}
html[data-theme="light"] body.login-theme a:hover {
    color:#0f3d86 !important;
}
html[data-theme="light"] body.login-theme .mt-6.text-center.text-xs {
    color:#334155 !important;
}
html[data-theme="light"] body.login-theme .mt-6.text-center.text-xs p:first-child {
    color:#1d4ed8 !important;
    font-weight:900 !important;
}
html[data-theme="light"] body.login-theme .mt-6.text-center.text-xs p:last-child {
    color:#475569 !important;
    font-weight:700 !important;
}


/* Ajuste visual. */
.menu-toggle-btn,
html[data-theme="light"] .menu-toggle-btn {
    min-width:44px;
    min-height:42px;
    background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
    color:#ffffff !important;
    border:1px solid rgba(125,211,252,.55) !important;
    box-shadow:0 12px 26px rgba(37,99,235,.28) !important;
}
.menu-toggle-btn:hover,
html[data-theme="light"] .menu-toggle-btn:hover {
    filter:brightness(1.08);
    transform:translateY(-1px);
}
.menu-toggle-btn svg {
    color:#ffffff !important;
}


/* Ajuste visual. */
html[data-theme="light"] body.login-theme,
html[data-theme="light"] body.auth-dark-theme {
    background:#020617 !important;
    color:#f8fafc !important;
}
html[data-theme="light"] body.login-theme > div,
html[data-theme="light"] body.auth-dark-theme > main {
    background:radial-gradient(circle at top,rgba(37,99,235,.30),transparent 34rem) !important;
}
html[data-theme="light"] body.login-theme .brand-logo-tile,
html[data-theme="light"] body.auth-dark-theme .brand-logo-tile {
    background:linear-gradient(145deg,#0f172a,#1d4ed8) !important;
    border:1px solid rgba(125,211,252,.45) !important;
    box-shadow:0 18px 45px rgba(15,23,42,.38), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
html[data-theme="light"] body.login-theme .brand-logo-img,
html[data-theme="light"] body.auth-dark-theme .brand-logo-img {
    filter:none !important;
    opacity:1 !important;
}
html[data-theme="light"] body.login-theme .brand-title,
html[data-theme="light"] body.auth-dark-theme .brand-title {
    color:#ffffff !important;
    text-shadow:0 8px 22px rgba(15,23,42,.28) !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl {
    background:rgba(15,23,42,.90) !important;
    border-color:rgba(51,65,85,.60) !important;
    color:#f8fafc !important;
    box-shadow:0 25px 50px -12px rgba(0,0,0,.40) !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl h2,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl h2,
html[data-theme="light"] body.login-theme .rounded-3xl .text-white,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl .text-white {
    color:#ffffff !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl p,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl p,
html[data-theme="light"] body.login-theme .text-slate-400,
html[data-theme="light"] body.auth-dark-theme .text-slate-400,
html[data-theme="light"] body.login-theme .text-slate-500,
html[data-theme="light"] body.auth-dark-theme .text-slate-500 {
    color:#94a3b8 !important;
}
html[data-theme="light"] body.login-theme label,
html[data-theme="light"] body.auth-dark-theme label,
html[data-theme="light"] body.login-theme .text-slate-300,
html[data-theme="light"] body.auth-dark-theme .text-slate-300 {
    color:#cbd5e1 !important;
}
html[data-theme="light"] body.login-theme input,
html[data-theme="light"] body.auth-dark-theme input {
    background:#020617 !important;
    border-color:#334155 !important;
    color:#ffffff !important;
    box-shadow:none !important;
}
html[data-theme="light"] body.login-theme input:focus,
html[data-theme="light"] body.auth-dark-theme input:focus {
    border-color:#3b82f6 !important;
    box-shadow:0 0 0 4px rgba(59,130,246,.20) !important;
}
html[data-theme="light"] body.login-theme button,
html[data-theme="light"] body.auth-dark-theme button {
    color:#ffffff !important;
}
html[data-theme="light"] body.login-theme button#btn,
html[data-theme="light"] body.auth-dark-theme button {
    background:linear-gradient(to right,#2563eb,#06b6d4) !important;
    box-shadow:0 10px 15px -3px rgba(23,37,84,.40), 0 4px 6px -4px rgba(23,37,84,.40) !important;
}
html[data-theme="light"] body.login-theme a,
html[data-theme="light"] body.auth-dark-theme a {
    color:#60a5fa !important;
}
html[data-theme="light"] body.login-theme .text-blue-700,
html[data-theme="light"] body.auth-dark-theme .text-blue-700 {
    color:#60a5fa !important;
}
html[data-theme="light"] body.login-theme .mt-6.text-center.text-xs,
html[data-theme="light"] body.auth-dark-theme .mt-6.text-center.text-xs {
    color:#64748b !important;
}

/* Tela de detalhes do ticket no tema claro. */
html[data-theme="light"] .ticket-detail-page {
    color:#0f172a;
}
html[data-theme="light"] .ticket-detail-page > .mb-6 {
    border:1px solid #bfdbfe;
    border-radius:18px;
    background:
        linear-gradient(135deg,rgba(239,246,255,.96),rgba(255,255,255,.98)),
        radial-gradient(circle at top left,rgba(37,99,235,.12),transparent 24rem);
    box-shadow:0 16px 34px rgba(37,99,235,.10);
    padding:18px;
}
html[data-theme="light"] .ticket-detail-page > .mb-6 .text-blue-700 {
    color:#1d4ed8 !important;
}
html[data-theme="light"] .ticket-detail-page .app-card {
    background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%) !important;
    border-color:#bfdbfe !important;
    box-shadow:0 14px 30px rgba(37,99,235,.09) !important;
}
html[data-theme="light"] .ticket-detail-page .app-card h1,
html[data-theme="light"] .ticket-detail-page .app-card h2,
html[data-theme="light"] .ticket-detail-page .app-card h3 {
    color:#0f2d5c !important;
}
html[data-theme="light"] .ticket-detail-page section .app-card .rounded-md,
html[data-theme="light"] .ticket-detail-page aside .app-card .rounded-xl,
html[data-theme="light"] .ticket-detail-page .grid.gap-3 > .rounded-xl {
    background:#eff6ff !important;
    border-color:#bfdbfe !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.70);
}
html[data-theme="light"] .ticket-detail-page section .app-card .rounded-md p:first-child,
html[data-theme="light"] .ticket-detail-page aside .app-card .rounded-xl p:first-child,
html[data-theme="light"] .ticket-detail-page .font-bold.text-slate-400 {
    color:#1d4ed8 !important;
}
html[data-theme="light"] .ticket-detail-page section .app-card .rounded-md p:not(:first-child),
html[data-theme="light"] .ticket-detail-page .text-slate-100,
html[data-theme="light"] .ticket-detail-page .font-semibold.text-slate-100 {
    color:#10213f !important;
}
html[data-theme="light"] .ticket-detail-page .topic-badge {
    background:#dbeafe !important;
    border-color:#93c5fd !important;
    color:#1e40af !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-number {
    color:#0284c7 !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card {
    background:linear-gradient(180deg,#ffffff,#eef6ff) !important;
    border-color:#93c5fd !important;
    box-shadow:0 18px 38px rgba(37,99,235,.13) !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex {
    background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
    border-color:#1d4ed8 !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex h2,
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex p {
    color:#ffffff !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex span {
    background:rgba(255,255,255,.18) !important;
    border-color:rgba(255,255,255,.38) !important;
    color:#ffffff !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-body {
    background:
        linear-gradient(180deg,#eaf3ff,#f8fbff) !important;
}
html[data-theme="light"] .ticket-detail-page .chat-compose {
    background:#f8fbff !important;
    border-color:#bfdbfe !important;
}
html[data-theme="light"] .ticket-detail-page .timeline-content {
    background:#eff6ff !important;
    border-color:#bfdbfe !important;
    box-shadow:0 10px 22px rgba(37,99,235,.08);
}
html[data-theme="light"] .ticket-detail-page .timeline-title {
    color:#0f2d5c !important;
}
html[data-theme="light"] .ticket-detail-page .timeline-user,
html[data-theme="light"] .ticket-detail-page .timeline-desc {
    color:#475569 !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-timeline::before {
    background:#93c5fd !important;
}

/* Tela de detalhes do ticket no tema escuro. */
html[data-theme="dark"] .ticket-detail-page {
    color:#e5edf7;
}
html[data-theme="dark"] .ticket-detail-page > .mb-6 {
    border:1px solid rgba(96,165,250,.26);
    border-radius:20px;
    background:
        radial-gradient(circle at top left,rgba(37,99,235,.24),transparent 28rem),
        linear-gradient(135deg,rgba(15,23,42,.94),rgba(17,24,39,.98));
    box-shadow:0 20px 46px rgba(2,6,23,.36), inset 0 1px 0 rgba(255,255,255,.06);
    padding:18px;
}
html[data-theme="dark"] .ticket-detail-page .app-card {
    background:
        linear-gradient(180deg,rgba(30,41,59,.96),rgba(15,23,42,.98)) !important;
    border-color:rgba(96,165,250,.20) !important;
    box-shadow:0 18px 42px rgba(2,6,23,.34), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
html[data-theme="dark"] .ticket-detail-page .app-card h1,
html[data-theme="dark"] .ticket-detail-page .app-card h2,
html[data-theme="dark"] .ticket-detail-page .app-card h3 {
    color:#f8fafc !important;
}
html[data-theme="dark"] .ticket-detail-page section .app-card .rounded-md,
html[data-theme="dark"] .ticket-detail-page aside .app-card .rounded-xl,
html[data-theme="dark"] .ticket-detail-page .grid.gap-3 > .rounded-xl {
    background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(15,23,42,.64)) !important;
    border-color:rgba(96,165,250,.18) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html[data-theme="dark"] .ticket-detail-page section .app-card .rounded-md p:first-child,
html[data-theme="dark"] .ticket-detail-page aside .app-card .rounded-xl p:first-child,
html[data-theme="dark"] .ticket-detail-page .font-bold.text-slate-400 {
    color:#93c5fd !important;
}
html[data-theme="dark"] .ticket-detail-page section .app-card .rounded-md p:not(:first-child),
html[data-theme="dark"] .ticket-detail-page .text-slate-100,
html[data-theme="dark"] .ticket-detail-page .font-semibold.text-slate-100 {
    color:#f8fafc !important;
}
html[data-theme="dark"] .ticket-detail-page .topic-badge {
    background:rgba(37,99,235,.18) !important;
    border:1px solid rgba(96,165,250,.34) !important;
    color:#bfdbfe !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-number {
    color:#38bdf8 !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-chat-card {
    background:
        linear-gradient(180deg,rgba(15,23,42,.98),rgba(17,24,39,.96)) !important;
    border-color:rgba(96,165,250,.28) !important;
    box-shadow:0 22px 48px rgba(2,6,23,.42), 0 0 0 1px rgba(37,99,235,.08) !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-chat-card > .flex {
    background:
        radial-gradient(circle at top left,rgba(56,189,248,.18),transparent 18rem),
        linear-gradient(135deg,#172554,#1d4ed8) !important;
    border-color:rgba(125,211,252,.30) !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-chat-card > .flex h2,
html[data-theme="dark"] .ticket-detail-page .ticket-chat-card > .flex p {
    color:#ffffff !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-chat-card > .flex span {
    background:rgba(15,23,42,.38) !important;
    border-color:rgba(191,219,254,.24) !important;
    color:#dbeafe !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-chat-body {
    background:
        radial-gradient(circle at top,rgba(37,99,235,.16),transparent 24rem),
        linear-gradient(180deg,#172033,#111827) !important;
}
html[data-theme="dark"] .ticket-detail-page .chat-compose {
    background:#0f172a !important;
    border-color:rgba(96,165,250,.20) !important;
}
html[data-theme="dark"] .ticket-detail-page .chat-message-other .chat-bubble {
    background:#0f172a !important;
    border-color:rgba(96,165,250,.22) !important;
}
html[data-theme="dark"] .ticket-detail-page .chat-message-system .chat-bubble {
    background:#172554 !important;
    border-color:rgba(96,165,250,.32) !important;
}
html[data-theme="dark"] .ticket-detail-page .timeline-content {
    background:
        linear-gradient(180deg,rgba(30,41,59,.96),rgba(15,23,42,.88)) !important;
    border-color:rgba(96,165,250,.20) !important;
    box-shadow:0 12px 26px rgba(2,6,23,.28);
}
html[data-theme="dark"] .ticket-detail-page .timeline-title {
    color:#f8fafc !important;
}
html[data-theme="dark"] .ticket-detail-page .timeline-user,
html[data-theme="dark"] .ticket-detail-page .timeline-desc {
    color:#cbd5e1 !important;
}
html[data-theme="dark"] .ticket-detail-page .ticket-timeline::before {
    background:linear-gradient(180deg,rgba(96,165,250,.50),rgba(37,99,235,.12)) !important;
}

/* Tela Meus dados. */
.meus-dados-page > .mb-6 {
    border-radius:20px;
    padding:18px;
}
.meus-dados-page form.app-card {
    overflow:hidden;
}
.meus-dados-page form.app-card section {
    border-radius:16px;
    padding:16px;
}
.meus-dados-page form.app-card section + section {
    margin-top:6px;
}
.meus-dados-page label span {
    letter-spacing:.01em;
}
.meus-dados-page .app-input {
    min-height:46px;
}
html[data-theme="dark"] .meus-dados-page > .mb-6 {
    border:1px solid rgba(147,197,253,.38);
    background:
        radial-gradient(circle at top left,rgba(125,211,252,.24),transparent 20rem),
        linear-gradient(135deg,#0b4db3,#0f67d6 55%,#1d8cff);
    box-shadow:0 18px 40px rgba(2,6,23,.34), inset 0 1px 0 rgba(255,255,255,.14);
}
html[data-theme="dark"] .meus-dados-page > .mb-6 h1,
html[data-theme="dark"] .meus-dados-page > .mb-6 p:first-child,
html[data-theme="dark"] .meus-dados-page > .mb-6 p:last-child {
    color:#ffffff !important;
    text-shadow:0 1px 2px rgba(15,23,42,.20);
}
html[data-theme="dark"] .meus-dados-page > .mb-6 p:last-child {
    opacity:.92;
}
html[data-theme="dark"] .meus-dados-page form.app-card {
    background:
        linear-gradient(180deg,rgba(30,41,59,.96),rgba(15,23,42,.98)) !important;
    border-color:rgba(96,165,250,.22) !important;
    box-shadow:0 20px 44px rgba(2,6,23,.34), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
html[data-theme="dark"] .meus-dados-page form.app-card section {
    background:linear-gradient(180deg,rgba(15,23,42,.74),rgba(15,23,42,.52));
    border:1px solid rgba(96,165,250,.16);
}
html[data-theme="dark"] .meus-dados-page form.app-card section.border-t {
    border-top:1px solid rgba(96,165,250,.20) !important;
}
html[data-theme="dark"] .meus-dados-page h2 {
    color:#f8fafc !important;
}
html[data-theme="dark"] .meus-dados-page label span {
    color:#93c5fd !important;
}
html[data-theme="dark"] .meus-dados-page section p {
    color:#cbd5e1 !important;
}
html[data-theme="light"] .meus-dados-page > .mb-6 {
    border:1px solid rgba(29,78,216,.22);
    background:
        radial-gradient(circle at top left,rgba(125,211,252,.28),transparent 20rem),
        linear-gradient(135deg,#0b5ed7,#1877f2 58%,#38a3ff);
    box-shadow:0 18px 36px rgba(37,99,235,.22), inset 0 1px 0 rgba(255,255,255,.18);
}
html[data-theme="light"] .meus-dados-page > .mb-6 h1,
html[data-theme="light"] .meus-dados-page > .mb-6 p:first-child,
html[data-theme="light"] .meus-dados-page > .mb-6 p:last-child {
    color:#ffffff !important;
    text-shadow:0 1px 2px rgba(15,23,42,.16);
}
html[data-theme="light"] .meus-dados-page > .mb-6 p:last-child {
    opacity:.92;
}
html[data-theme="light"] .meus-dados-page form.app-card {
    background:linear-gradient(180deg,#ffffff,#f8fbff) !important;
    border-color:#bfdbfe !important;
    box-shadow:0 18px 38px rgba(37,99,235,.11) !important;
}
html[data-theme="light"] .meus-dados-page form.app-card section {
    background:#eff6ff;
    border:1px solid #bfdbfe;
}
html[data-theme="light"] .meus-dados-page form.app-card section.border-t {
    border-top:1px solid #bfdbfe !important;
}
html[data-theme="light"] .meus-dados-page h2 {
    color:#0f2d5c !important;
}
html[data-theme="light"] .meus-dados-page label span {
    color:#1d4ed8 !important;
}
html[data-theme="light"] .meus-dados-page section p {
    color:#475569 !important;
}
html[data-theme="light"] .meus-dados-page .app-input {
    background:#ffffff !important;
    border-color:#9fc4f5 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%) !important;
    border-color: #bfdbfe !important;
}

/* Links normais do menu */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]) {
    color: #1e293b !important;
    font-weight: 800 !important;
}

/* Texto dentro dos links normais */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]) span {
    color: #1e293b !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]) svg {
    color: #2563eb !important;
    stroke: currentColor !important;
}

/* Hover dos links */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]):hover {
    background: #e0f2fe !important;
    color: #0f172a !important;
}

/* Texto no hover */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]):hover span {
    color: #0f172a !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar nav a:not(.bg-blue-600):not([href*="logout"]):hover svg {
    color: #1d4ed8 !important;
}

/* Link ativo do menu */
html[data-theme="light"] .app-sidebar nav a.bg-blue-600 {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .28) !important;
}

/* Texto do link ativo */
html[data-theme="light"] .app-sidebar nav a.bg-blue-600 span {
    color: #ffffff !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar nav a.bg-blue-600 svg {
    color: #ffffff !important;
    stroke: currentColor !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar h2 {
    color: #0f172a !important;
    font-weight: 900 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar h2 + p {
    color: #475569 !important;
    font-weight: 700 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar nav p {
    color: #1d4ed8 !important;
    font-weight: 900 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar .mt-auto .bg-slate-900 {
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar .mt-auto .text-white {
    color: #0f172a !important;
}


/* Ajuste visual. */
html[data-theme="light"] .app-sidebar .mt-auto .text-slate-400 {
    color: #475569 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .institutional-footer {
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
}

html[data-theme="light"] .institutional-footer p:first-child {
    color: #1d4ed8 !important;
}

html[data-theme="light"] .institutional-footer p:last-child {
    color: #334155 !important;
}

.sidebar-account-card {
    margin-top: auto;
    margin-bottom: 18px;
    border-radius: 20px;
    padding: 14px;
    background:
        radial-gradient(circle at top left, rgba(14, 165, 233, .24), transparent 44%),
        linear-gradient(180deg, rgba(15, 23, 42, .98), rgba(30, 41, 59, .92));
    border: 1px solid rgba(96, 165, 250, .26);
    box-shadow: 0 18px 36px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .05);
}

.sidebar-account-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sidebar-user-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
    border: 1px solid rgba(191, 219, 254, .35);
    box-shadow: 0 12px 24px rgba(37, 99, 235, .34);
}

.sidebar-user-icon span {
    color: #ffffff;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: .04em;
}

.sidebar-account-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    border-radius: 999px;
    padding: 3px 7px;
    background: rgba(37, 99, 235, .18);
    border: 1px solid rgba(96, 165, 250, .24);
    font-size: 9px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #bfdbfe;
}

.sidebar-user-name {
    margin-top: 7px;
    max-width: 162px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 950;
    color: #ffffff;
}

.sidebar-user-meta {
    margin-top: 3px;
    max-width: 162px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    font-weight: 700;
    color: #cbd5e1;
}

.sidebar-account-actions {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(148, 163, 184, .16);
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
}

.sidebar-theme-btn,
.sidebar-logout-btn {
    min-height: 30px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border-radius: 10px;
    padding: 6px 8px;
    font-size: 11px;
    font-weight: 900;
    transition: .18s ease;
}

.sidebar-theme-btn {
    background: rgba(37, 99, 235, .18);
    color: #dbeafe;
    border: 1px solid rgba(96, 165, 250, .30);
}

.sidebar-theme-btn:hover {
    background: rgba(37, 99, 235, .28);
    color: #ffffff;
}

.sidebar-theme-btn svg,
.sidebar-logout-btn svg {
    width: 14px;
    height: 14px;
    stroke: currentColor;
}

.sidebar-theme-btn:hover,
.sidebar-logout-btn:hover {
    transform: translateY(-1px);
}

.sidebar-logout-btn {
    background: rgba(15, 23, 42, .42);
    color: #fecaca;
    border: 1px solid rgba(248, 113, 113, .28);
}

.sidebar-logout-btn:hover {
    background: rgba(220, 38, 38, .22);
    color: #ffffff;
}

html[data-theme="light"] .sidebar-account-card {
    background:
        radial-gradient(circle at top left, rgba(37, 99, 235, .16), transparent 48%),
        linear-gradient(180deg, #ffffff 0%, #eff6ff 100%) !important;
    border: 1px solid #bfdbfe !important;
    box-shadow: 0 18px 32px rgba(37, 99, 235, .12), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

html[data-theme="light"] .sidebar-user-icon {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
    border-color: #bfdbfe !important;
    box-shadow: 0 12px 24px rgba(37, 99, 235, .24) !important;
}

html[data-theme="light"] .sidebar-user-icon span {
    color: #ffffff !important;
}

html[data-theme="light"] .sidebar-account-label {
    background: #dbeafe !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

html[data-theme="light"] .sidebar-user-name {
    color: #0f172a !important;
}

html[data-theme="light"] .sidebar-user-meta {
    color: #475569 !important;
}

html[data-theme="light"] .sidebar-account-actions {
    margin-top: 10px !important;
    padding-top: 10px !important;
    gap: 7px !important;
    border-top-color: #dbeafe !important;
}

html[data-theme="light"] .sidebar-theme-btn,
html[data-theme="light"] .sidebar-logout-btn {
    min-height: 30px !important;
    gap: 5px !important;
    border-radius: 10px !important;
    padding: 6px 8px !important;
    font-size: 11px !important;
    line-height: 1 !important;
}

html[data-theme="light"] .sidebar-theme-btn svg,
html[data-theme="light"] .sidebar-logout-btn svg {
    width: 14px !important;
    height: 14px !important;
}

html[data-theme="light"] .sidebar-theme-btn {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
    border: 1px solid rgba(37, 99, 235, .22) !important;
    box-shadow: 0 10px 20px rgba(37, 99, 235, .16) !important;
}

html[data-theme="light"] .sidebar-theme-btn:hover {
    filter: brightness(1.05);
    color: #ffffff !important;
}

html[data-theme="light"] .sidebar-logout-btn {
    background: #ffffff !important;
    color: #be123c !important;
    border: 1px solid #fecdd3 !important;
    box-shadow: 0 8px 18px rgba(190, 18, 60, .08) !important;
}

html[data-theme="light"] .sidebar-logout-btn:hover {
    background: #fff1f2 !important;
    color: #9f1239 !important;
}


/* Ajuste visual. */
.app-sidebar .sidebar-account-card .sidebar-theme-btn,
.app-sidebar .sidebar-account-card .sidebar-logout-btn,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-theme-btn,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-logout-btn {
    box-sizing: border-box !important;
    min-height: 30px !important;
    height: 30px !important;
    max-height: 30px !important;
    padding: 6px 8px !important;
    gap: 5px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.app-sidebar .sidebar-account-card .sidebar-theme-btn span,
.app-sidebar .sidebar-account-card .sidebar-logout-btn span,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-theme-btn span,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-logout-btn span {
    display: inline-block !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}

.app-sidebar .sidebar-account-card .sidebar-theme-btn svg,
.app-sidebar .sidebar-account-card .sidebar-logout-btn svg,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-theme-btn svg,
html[data-theme="light"] .app-sidebar .sidebar-account-card .sidebar-logout-btn svg {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
}


/* Ajuste visual. */
.system-check-notice {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 20px;
    border-radius: 18px;
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, .26), transparent 45%),
        linear-gradient(135deg, rgba(30, 64, 175, .22), rgba(15, 23, 42, .96));
    border: 1px solid rgba(96, 165, 250, .48);
    box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}

.system-check-notice-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
    box-shadow: 0 12px 26px rgba(37, 99, 235, .32);
}

.system-check-notice-icon svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
}

.system-check-notice-title {
    margin: 0;
    font-size: 15px;
    font-weight: 900;
    color: #ffffff;
}

.system-check-notice-text {
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.6;
    font-weight: 600;
    color: #bfdbfe;
}

.system-check-notice-text strong {
    display: inline-flex;
    margin-left: 4px;
    padding: 3px 8px;
    border-radius: 9px;
    background: rgba(15, 23, 42, .75);
    color: #ffffff;
    font-weight: 900;
    border: 1px solid rgba(147, 197, 253, .28);
}


/* Ajuste visual. */
html[data-theme="light"] .system-check-notice {
    background:
        radial-gradient(circle at top left, rgba(37, 99, 235, .16), transparent 45%),
        linear-gradient(135deg, #eff6ff, #ffffff) !important;
    border: 1px solid #93c5fd !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .10) !important;
}

html[data-theme="light"] .system-check-notice-icon {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
}

html[data-theme="light"] .system-check-notice-title {
    color: #0f172a !important;
}

html[data-theme="light"] .system-check-notice-text {
    color: #334155 !important;
}

html[data-theme="light"] .system-check-notice-text strong {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
    border: 1px solid #93c5fd !important;
}

/* =========================================================
   Tela Equipe de TI - melhorias no tema claro
   Arquivo: views/ti/membros.php
========================================================= */

html[data-theme="light"] .panel-grid {
    align-items: start;
}

/* Cards principais da tela Equipe de TI */
html[data-theme="light"] .panel-grid > .app-card {
    background:
        radial-gradient(circle at top left, rgba(37, 99, 235, .10), transparent 44%),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    border: 1px solid #bfdbfe !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .10) !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid > .app-card h2 {
    color: #0f172a !important;
    font-weight: 900 !important;
}

/* Textos menores dos cards */
html[data-theme="light"] .panel-grid > .app-card p,
html[data-theme="light"] .panel-grid > .app-card .text-slate-400,
html[data-theme="light"] .panel-grid > .app-card .text-slate-500 {
    color: #475569 !important;
    font-weight: 600 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid label span,
html[data-theme="light"] .panel-grid .text-slate-300 {
    color: #1e3a8a !important;
    font-weight: 900 !important;
}

/* Inputs da tela Equipe de TI */
html[data-theme="light"] .panel-grid .app-input {
    background: #ffffff !important;
    border: 1px solid #b8d5fb !important;
    color: #0f172a !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9) !important;
}

html[data-theme="light"] .panel-grid .app-input::placeholder {
    color: #64748b !important;
}

html[data-theme="light"] .panel-grid .app-input:focus {
    background: #ffffff !important;
    border-color: #2563eb !important;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .14) !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .check-grid {
    gap: 10px;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .check-pill {
    background: #ffffff !important;
    border: 1px solid #bfdbfe !important;
    color: #1e293b !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05) !important;
    transition: .18s ease !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .check-pill span {
    color: #1e293b !important;
    font-weight: 800 !important;
}

/* Checkbox */
html[data-theme="light"] .panel-grid .check-pill input {
    accent-color: #2563eb;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .check-pill:hover {
    background: #eff6ff !important;
    border-color: #60a5fa !important;
    transform: translateY(-1px);
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .check-pill:has(input:checked) {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    border-color: #1d4ed8 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(37, 99, 235, .20) !important;
}

html[data-theme="light"] .panel-grid .check-pill:has(input:checked) span {
    color: #ffffff !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid > .app-card .border-b {
    border-color: #bfdbfe !important;
    background: linear-gradient(135deg, rgba(37, 99, 235, .08), rgba(14, 165, 233, .04)) !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article {
    background:
        radial-gradient(circle at top left, rgba(37, 99, 235, .10), transparent 52%),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    border: 1px solid #bfdbfe !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .08) !important;
    overflow: hidden;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article h3 {
    color: #0f172a !important;
    font-weight: 900 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article p {
    color: #475569 !important;
    font-weight: 600 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article .topic-badge {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
    border: 1px solid #1d4ed8 !important;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18) !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article .uppercase {
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    letter-spacing: .06em !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid article .badge-status-open {
    background: #dbeafe !important;
    color: #1e3a8a !important;
    border-color: #93c5fd !important;
    font-weight: 900 !important;
}

html[data-theme="light"] .panel-grid article .badge-status-neutral {
    background: #f1f5f9 !important;
    color: #334155 !important;
    border-color: #cbd5e1 !important;
    font-weight: 900 !important;
}

/* Linha do editar dados */
html[data-theme="light"] .panel-grid details {
    border-color: #bfdbfe !important;
    background: #ffffff !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid summary {
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    border-top: 1px solid #dbeafe !important;
    transition: .18s ease !important;
}

html[data-theme="light"] .panel-grid summary:hover {
    background: #dbeafe !important;
    color: #1e40af !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid details[open] > div {
    background: #f8fbff !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .border-t {
    border-color: #bfdbfe !important;
}

/* Card vazio: nenhum membro cadastrado */
html[data-theme="light"] .panel-grid .border-dashed {
    background: #f8fbff !important;
    border-color: #93c5fd !important;
    color: #475569 !important;
    font-weight: 700 !important;
}


/* Ajuste visual. */
html[data-theme="light"] .panel-grid .app-btn-primary {
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(37, 99, 235, .22) !important;
}

html[data-theme="light"] .panel-grid .app-btn-warning {
    background: linear-gradient(135deg, #f59e0b, #fbbf24) !important;
    color: #111827 !important;
    box-shadow: 0 12px 24px rgba(245, 158, 11, .18) !important;
}

html[data-theme="light"] .panel-grid .app-btn-danger {
    background: linear-gradient(135deg, #ef4444, #dc2626) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(220, 38, 38, .20) !important;
}

/* Responsividade da tela Equipe de TI */
@media (max-width: 640px) {
    html[data-theme="light"] .panel-grid > .app-card {
        border-radius: 16px !important;
    }

    html[data-theme="light"] .panel-grid article {
        border-radius: 16px !important;
    }
}


/* Ajuste visual. */
.ti-members-heading {
    position: relative;
    padding: 22px 24px;
    border-radius: 22px;
    background:
        radial-gradient(circle at top left, rgba(125, 211, 252, .24), transparent 20rem),
        linear-gradient(135deg, #0b4db3, #0f67d6 55%, #1d8cff);
    border: 1px solid rgba(147, 197, 253, .38);
    box-shadow: 0 18px 42px rgba(2, 6, 23, .26), inset 0 1px 0 rgba(255, 255, 255, .14);
    overflow: hidden;
}

.ti-members-heading::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255, 255, 255, .12), transparent 55%);
}

.ti-members-heading > div {
    position: relative;
    z-index: 1;
}

.ti-members-heading .ti-members-kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0 0 8px 0;
    padding: 6px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .30);
    color: #ffffff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.ti-members-heading h1 {
    margin: 0;
    color: #ffffff;
    font-size: 32px;
    line-height: 1.1;
    font-weight: 950;
}

.ti-members-heading .ti-members-description {
    max-width: 720px;
    margin-top: 8px;
    color: rgba(255, 255, 255, .92);
    font-size: 15px;
    line-height: 1.6;
    font-weight: 600;
}


/* Ajuste visual. */
html[data-theme="light"] .ti-members-heading {
    background:
        radial-gradient(circle at top left, rgba(125, 211, 252, .28), transparent 20rem),
        linear-gradient(135deg, #0b5ed7, #1877f2 58%, #38a3ff) !important;
    border: 1px solid rgba(29, 78, 216, .22) !important;
    box-shadow: 0 18px 36px rgba(37, 99, 235, .22), inset 0 1px 0 rgba(255, 255, 255, .18) !important;
}

html[data-theme="light"] .ti-members-heading::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, .14), transparent 58%) !important;
}

html[data-theme="light"] .ti-members-heading .ti-members-kicker {
    background: rgba(255, 255, 255, .18) !important;
    border: 1px solid rgba(255, 255, 255, .34) !important;
    color: #ffffff !important;
}

html[data-theme="light"] .ti-members-heading h1 {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(15, 23, 42, .16);
}

html[data-theme="light"] .ti-members-heading .ti-members-description {
    color: rgba(255, 255, 255, .92) !important;
    font-weight: 700 !important;
    text-shadow: 0 1px 2px rgba(15, 23, 42, .12);
}


/* Ajuste visual. */
html[data-theme="light"] body.login-theme input,
html[data-theme="light"] body.login-theme input[type="email"],
html[data-theme="light"] body.login-theme input[type="password"],
html[data-theme="light"] body.auth-dark-theme input,
html[data-theme="light"] body.auth-dark-theme input[type="email"],
html[data-theme="light"] body.auth-dark-theme input[type="password"],
html[data-theme="light"] body.auth-dark-theme input[type="text"],
html[data-theme="light"] body.auth-dark-theme input[type="tel"] {
    background-color: #020617 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #60a5fa !important;
    border-color: #334155 !important;
    box-shadow: none !important;
}

html[data-theme="light"] body.login-theme input::placeholder,
html[data-theme="light"] body.auth-dark-theme input::placeholder {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
    opacity: 1 !important;
}

html[data-theme="light"] body.login-theme input:focus,
html[data-theme="light"] body.auth-dark-theme input:focus {
    background-color: #020617 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, .20) !important;
    outline: none !important;
}

html[data-theme="light"] body.login-theme input:-webkit-autofill,
html[data-theme="light"] body.login-theme input:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme input:-webkit-autofill:focus,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill:hover,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 0 0 1000px #020617 inset !important;
    transition: background-color 9999s ease-in-out 0s !important;
    caret-color: #60a5fa !important;
}

/* Layout complementar da abertura de chamados. */
.ticket-open-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, .65fr);
    gap: 12px;
    margin-bottom: 12px;
}

@media (max-width: 700px) {
    .ticket-open-detail-grid {
        grid-template-columns: 1fr;
    }
}


/* Auditoria final do tema claro: contraste e consistência em todas as telas. */
html[data-theme="light"] .app-shell {
    --light-bg: #edf3f8;
    --light-surface: #ffffff;
    --light-surface-soft: #f3f7fb;
    --light-border: #c8d8e6;
    --light-border-strong: #a9c4da;
    --light-text: #0f2a43;
    --light-muted: #4f687d;
    --light-blue: #0b67b2;
    --light-blue-strong: #07579a;
    background: var(--light-bg) !important;
    color: var(--light-text) !important;
}
html[data-theme="light"] .app-topbar {
    border-color: #bfd3e4 !important;
    background: rgba(255, 255, 255, .97) !important;
    color: var(--light-text) !important;
    box-shadow: 0 8px 22px rgba(21, 55, 84, .08) !important;
    backdrop-filter: blur(12px);
}
html[data-theme="light"] .app-topbar h1 { color: #0b2c49 !important; }
html[data-theme="light"] .app-topbar p { color: #0b67b2 !important; }
html[data-theme="light"] .app-main { color: var(--light-text); }
html[data-theme="light"] .app-main header {
    background: transparent !important;
    color: inherit !important;
    border-color: var(--light-border) !important;
    box-shadow: none !important;
    backdrop-filter: none;
}
html[data-theme="light"] .app-main h1,
html[data-theme="light"] .app-main h2,
html[data-theme="light"] .app-main h3,
html[data-theme="light"] .app-main h4,
html[data-theme="light"] .app-main .text-slate-950,
html[data-theme="light"] .app-main .text-slate-900,
html[data-theme="light"] .app-main .text-slate-800 {
    color: #0b2944 !important;
}
html[data-theme="light"] .app-main .text-slate-700,
html[data-theme="light"] .app-main .text-slate-600 {
    color: #334f66 !important;
}
html[data-theme="light"] .app-main .text-slate-500,
html[data-theme="light"] .app-main .text-slate-400,
html[data-theme="light"] .app-main .text-gray-500,
html[data-theme="light"] .app-main .text-gray-400 {
    color: #50697d !important;
}
html[data-theme="light"] .app-main .text-slate-300,
html[data-theme="light"] .app-main .text-slate-200,
html[data-theme="light"] .app-main .text-slate-100 {
    color: #26445d !important;
}
html[data-theme="light"] .app-main .text-blue-300,
html[data-theme="light"] .app-main .text-blue-400,
html[data-theme="light"] .app-main .text-blue-600,
html[data-theme="light"] .app-main .text-blue-700 {
    color: var(--light-blue) !important;
}
html[data-theme="light"] .app-card,
html[data-theme="light"] .modern-card,
html[data-theme="light"] .table-shell,
html[data-theme="light"] .ticket-wizard {
    border-color: var(--light-border) !important;
    background: var(--light-surface) !important;
    color: var(--light-text) !important;
    box-shadow: 0 8px 22px rgba(24, 58, 87, .08) !important;
}
html[data-theme="light"] .app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="submit"]):not([type="button"]),
html[data-theme="light"] .app-shell select,
html[data-theme="light"] .app-shell textarea,
html[data-theme="light"] .app-shell .app-input,
html[data-theme="light"] .app-shell .wizard-input {
    border-color: #abc3d6 !important;
    background: #ffffff !important;
    color: #102a43 !important;
    -webkit-text-fill-color: #102a43 !important;
    caret-color: #0b67b2 !important;
    opacity: 1 !important;
    box-shadow: inset 0 1px 2px rgba(15, 42, 67, .05) !important;
}
html[data-theme="light"] .app-shell input::placeholder,
html[data-theme="light"] .app-shell textarea::placeholder,
html[data-theme="light"] .app-shell .app-input::placeholder,
html[data-theme="light"] .app-shell .wizard-input::placeholder {
    color: #6b8193 !important;
    -webkit-text-fill-color: #6b8193 !important;
    opacity: 1 !important;
}
html[data-theme="light"] .app-shell input:focus,
html[data-theme="light"] .app-shell select:focus,
html[data-theme="light"] .app-shell textarea:focus,
html[data-theme="light"] .app-shell .app-input:focus,
html[data-theme="light"] .app-shell .wizard-input:focus {
    border-color: #1680d1 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(22, 128, 209, .16) !important;
    outline: none !important;
}
html[data-theme="light"] .app-shell input:disabled,
html[data-theme="light"] .app-shell input[readonly],
html[data-theme="light"] .app-shell select:disabled,
html[data-theme="light"] .app-shell textarea:disabled {
    border-color: #d3dee7 !important;
    background: #edf2f6 !important;
    color: #5d7284 !important;
    -webkit-text-fill-color: #5d7284 !important;
    opacity: 1 !important;
}
html[data-theme="light"] .app-shell select option {
    background: #ffffff;
    color: #102a43;
}
html[data-theme="light"] .app-shell input[type="checkbox"],
html[data-theme="light"] .app-shell input[type="radio"] {
    accent-color: #0b67b2;
}
html[data-theme="light"] .app-shell input[type="file"] {
    color: #334f66 !important;
}
html[data-theme="light"] .app-btn-secondary,
html[data-theme="light"] .pagination-btn {
    border-color: #abc3d6 !important;
    background: #eef4f9 !important;
    color: #17415f !important;
    box-shadow: none !important;
}
html[data-theme="light"] .app-btn-secondary:hover,
html[data-theme="light"] .pagination-btn:hover {
    border-color: #7ba8ca !important;
    background: #e1edf6 !important;
    color: #0b4f84 !important;
}
html[data-theme="light"] .app-btn-primary,
html[data-theme="light"] .app-shell a.bg-blue-600,
html[data-theme="light"] .app-shell button.bg-blue-600 {
    border-color: #0962aa !important;
    background: #0b67b2 !important;
    color: #ffffff !important;
    box-shadow: 0 6px 15px rgba(11, 103, 178, .2) !important;
}
html[data-theme="light"] .app-alert-success {
    border-color: #9acdb0 !important;
    background: #e9f7ef !important;
    color: #17633b !important;
}
html[data-theme="light"] .app-alert-error {
    border-color: #efb0b5 !important;
    background: #fff0f1 !important;
    color: #a6232d !important;
}
html[data-theme="light"] .app-alert-warning {
    border-color: #e5ca86 !important;
    background: #fff8df !important;
    color: #76520a !important;
}
html[data-theme="light"] .app-table {
    color: #15324a !important;
}
html[data-theme="light"] .app-table thead,
html[data-theme="light"] .app-table th {
    border-color: #0b5f9f !important;
    background: #0b67b2 !important;
    color: #ffffff !important;
    text-shadow: none !important;
}
html[data-theme="light"] .app-table td {
    border-color: #d7e2ea !important;
    color: #233f56 !important;
}
html[data-theme="light"] .app-table tbody tr {
    background: #ffffff !important;
}
html[data-theme="light"] .app-table tbody tr:nth-child(even) {
    background: #f5f8fb !important;
}
html[data-theme="light"] .app-table tbody tr:hover {
    background: #e9f3fb !important;
}
html[data-theme="light"] .ticket-number {
    color: #0b67b2 !important;
    text-shadow: none !important;
}
html[data-theme="light"] .ticket-card.modern-card {
    border-color: #bdd2e2 !important;
    background: #ffffff !important;
}
html[data-theme="light"] .ticket-description {
    color: #304b61 !important;
    opacity: 1 !important;
}
html[data-theme="light"] .topic-badge {
    border-color: #a8c7df !important;
    background: #e7f2fa !important;
    color: #0b5d9d !important;
}
html[data-theme="light"] .ticket-chat-card,
html[data-theme="light"] .ticket-chat-body,
html[data-theme="light"] .chat-compose {
    border-color: #bfd2e1 !important;
    background: #f5f9fc !important;
}
html[data-theme="light"] .chat-message-other .chat-bubble {
    border-color: #c2d3e1 !important;
    background: #ffffff !important;
    color: #17364e !important;
}
html[data-theme="light"] .chat-message-system .chat-bubble {
    border-color: #9fc3df !important;
    background: #eaf4fb !important;
    color: #123d5e !important;
}
html[data-theme="light"] .chat-message-mine .chat-bubble {
    border-color: #1675bd !important;
    background: #0b67b2 !important;
    color: #ffffff !important;
}
html[data-theme="light"] .chat-message-mine .chat-bubble * {
    color: #ffffff !important;
}
html[data-theme="light"] .chat-author { color: #0b67b2 !important; }
html[data-theme="light"] .chat-meta,
html[data-theme="light"] .chat-role { color: #587084 !important; }
html[data-theme="light"] .timeline-content,
html[data-theme="light"] .success-info,
html[data-theme="light"] .requester-card,
html[data-theme="light"] .wizard-summary,
html[data-theme="light"] .wizard-summary div,
html[data-theme="light"] .check-pill {
    border-color: #c8d8e5 !important;
    background: #f4f8fb !important;
    color: #17354c !important;
}
html[data-theme="light"] details {
    border-color: #c8d8e5 !important;
    background: #ffffff !important;
    color: #15344c !important;
}
html[data-theme="light"] details > summary {
    background: #edf5fb !important;
    color: #0b5f9f !important;
}
html[data-theme="light"] details > summary:hover {
    background: #e1eef7 !important;
}
html[data-theme="light"] .wizard-step h2,
html[data-theme="light"] .wizard-summary strong,
html[data-theme="light"] .requester-card strong {
    color: #0b2944 !important;
}
html[data-theme="light"] .wizard-step p,
html[data-theme="light"] .wizard-progress span,
html[data-theme="light"] .requester-card span,
html[data-theme="light"] .requester-card small,
html[data-theme="light"] .wizard-summary span {
    color: #50697d !important;
}
html[data-theme="light"] .topic-card {
    border-color: #bdd0df !important;
    background: #f7fafc !important;
    color: #15344c !important;
}
html[data-theme="light"] .topic-card:hover,
html[data-theme="light"] .topic-card.active {
    border-color: #1680d1 !important;
    background: #e7f2fa !important;
    color: #0a538d !important;
}
html[data-theme="light"] .users-list-meta,
html[data-theme="light"] .users-list-meta p,
html[data-theme="light"] .user-email,
html[data-theme="light"] .user-sector,
html[data-theme="light"] .user-date {
    color: #3e5a70 !important;
    opacity: 1 !important;
}
html[data-theme="light"] .user-password-summary,
html[data-theme="light"] .user-password-form {
    border-color: #bcd1e1 !important;
    background: #f1f7fb !important;
    color: #173b57 !important;
}
html[data-theme="light"] .ti-member-card {
    border-color: #c4d6e4 !important;
    background: #ffffff !important;
    color: #15344c !important;
}
html[data-theme="light"] .sidebar-account-card,
html[data-theme="light"] .institutional-footer {
    border-color: #c5d7e5 !important;
    background: #eef5fa !important;
    color: #304e65 !important;
    box-shadow: none !important;
}
html[data-theme="light"] .sidebar-account-label,
html[data-theme="light"] .sidebar-user-meta,
html[data-theme="light"] .institutional-footer p:last-child {
    color: #526b7f !important;
}
html[data-theme="light"] .sidebar-user-name,
html[data-theme="light"] .institutional-footer p:first-child {
    color: #0b2944 !important;
}
html[data-theme="light"] .sidebar-theme-btn {
    border-color: #b7cede !important;
    background: #ffffff !important;
    color: #17415f !important;
}
html[data-theme="light"] .sidebar-logout-btn {
    border-color: #edb3b7 !important;
    background: #fff0f1 !important;
    color: #a6232d !important;
}
html[data-theme="light"] .app-footer {
    color: #4b6579 !important;
}
html[data-theme="light"] .app-footer p:first-child {
    color: #214963 !important;
}

/* Login e cadastro permanecem escuros, inclusive quando a preferência geral é clara. */
html[data-theme="light"] body.login-theme,
html[data-theme="light"] body.auth-dark-theme {
    color-scheme: dark;
    background: #020617 !important;
    color: #f8fafc !important;
}
html[data-theme="light"] body.login-theme > div,
html[data-theme="light"] body.auth-dark-theme > main {
    background: radial-gradient(circle at top, rgba(37, 99, 235, .3), transparent 34rem) !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl {
    border-color: #334155 !important;
    background: rgba(15, 23, 42, .96) !important;
    color: #f8fafc !important;
    box-shadow: 0 24px 55px rgba(0, 0, 0, .42) !important;
}
html[data-theme="light"] body.login-theme label,
html[data-theme="light"] body.auth-dark-theme label {
    color: #d7e1ec !important;
}
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]),
html[data-theme="light"] body.auth-dark-theme input:not([type="checkbox"]):not([type="radio"]) {
    -webkit-appearance: none;
    appearance: none;
    border-color: #52657a !important;
    background: #07111f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #60a5fa !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, .08) !important;
}
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme="light"] body.auth-dark-theme input:not([type="checkbox"]):not([type="radio"]):focus {
    border-color: #60a5fa !important;
    background: #07111f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, .24) !important;
}
html[data-theme="light"] body.login-theme input::placeholder,
html[data-theme="light"] body.auth-dark-theme input::placeholder {
    color: #8293a8 !important;
    -webkit-text-fill-color: #8293a8 !important;
    opacity: 1 !important;
}
html[data-theme="light"] body.login-theme input:-webkit-autofill,
html[data-theme="light"] body.login-theme input:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme input:-webkit-autofill:focus,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill:hover,
html[data-theme="light"] body.auth-dark-theme input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0 1000px #07111f inset !important;
    box-shadow: 0 0 0 1000px #07111f inset !important;
    caret-color: #60a5fa !important;
}
html[data-theme="light"] body.login-theme input[type="checkbox"],
html[data-theme="light"] body.auth-dark-theme input[type="checkbox"] {
    accent-color: #3b82f6;
    background: #07111f !important;
}
html[data-theme="light"] body.login-theme .brand-title,
html[data-theme="light"] body.auth-dark-theme .brand-title,
html[data-theme="light"] body.login-theme .rounded-3xl h2,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl h2 {
    color: #ffffff !important;
}
html[data-theme="light"] body.login-theme .rounded-3xl p,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl p {
    color: #a9b8c9 !important;
}
html[data-theme="light"] body.login-theme .text-blue-700,
html[data-theme="light"] body.auth-dark-theme .text-blue-700,
html[data-theme="light"] body.login-theme a,
html[data-theme="light"] body.auth-dark-theme a {
    color: #76b7ff !important;
}

/* Mantem os campos de acesso claros tambem durante a digitacao e o autofill. */
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]),
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]):hover {
    appearance: none !important;
    background: #ffffff !important;
    border-color: #a9c6dd !important;
    color: #102e55 !important;
    -webkit-text-fill-color: #102e55 !important;
    caret-color: #1670cf !important;
    opacity: 1 !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .03) !important;
}
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]):active {
    border-color: #1670cf !important;
    box-shadow: 0 0 0 4px rgba(22, 112, 207, .12) !important;
}
html[data-theme="light"] body.login-theme input:-webkit-autofill,
html[data-theme="light"] body.login-theme input:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme input:-webkit-autofill:focus,
html[data-theme="light"] body.login-theme input:-webkit-autofill:active {
    background-color: #ffffff !important;
    -webkit-text-fill-color: #102e55 !important;
    -webkit-box-shadow: 0 0 0 1000px #ffffff inset, 0 0 0 4px rgba(22, 112, 207, .12) !important;
    box-shadow: 0 0 0 1000px #ffffff inset, 0 0 0 4px rgba(22, 112, 207, .12) !important;
    caret-color: #1670cf !important;
}
html[data-theme="light"] body.login-theme input:autofill {
    background-color: #ffffff !important;
    color: #102e55 !important;
    -webkit-text-fill-color: #102e55 !important;
}
html[data-theme="light"] body.login-theme input::placeholder {
    color: #6d879e !important;
    -webkit-text-fill-color: #6d879e !important;
    opacity: 1 !important;
}

/* Situações operacionais dos chamados. */
.badge-status-reopened { background:#2f7d4a; color:#f0fdf4; border-color:#4fa66d; }
.badge-status-ti-waiting { background:#9a744f; color:#fffaf3; border-color:#c59a6f; }
.badge-status-third-party { background:#f97316; color:#431407; border-color:#fb923c; }
.badge-status-cancelled { background:#64748b; color:#f8fafc; border-color:#94a3b8; }

.ticket-situation-legend {
    display:grid;
    grid-template-columns:minmax(190px, .28fr) minmax(0, 1fr);
    align-items:center;
    gap:14px 22px;
    margin:0 0 12px;
    padding:13px 16px;
    border:1px solid rgba(96,165,250,.24);
    border-left:3px solid #2589e8;
    border-radius:8px;
    background:#111d31;
}
.ticket-situation-legend-heading {
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;
}
.ticket-situation-legend-heading strong {
    color:#f8fafc;
    font-size:13px;
    font-weight:900;
}
.ticket-situation-legend-heading span {
    color:#8da2b9;
    font-size:11px;
    font-weight:600;
}
.ticket-situation-legend-items {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
}
.ticket-situation-legend-item,
.ticket-situation-inline {
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-width:0;
    color:#dce8f5;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
}
.ticket-situation-legend-item {
    padding:6px 8px;
    border:1px solid rgba(148,163,184,.15);
    border-radius:6px;
    background:rgba(15,23,42,.54);
}
.ticket-situation-dot {
    display:inline-block;
    flex:0 0 14px;
    width:14px;
    height:14px;
    border:2px solid rgba(255,255,255,.48);
    border-radius:50%;
    box-shadow:0 0 0 2px rgba(15,23,42,.72);
}
.ticket-situation-open { background:#8ee85d; border-color:#baf795; }
.ticket-situation-reopened { background:#2f7d4a; border-color:#6ab882; }
.ticket-situation-allocated { background:#f8fafc; border-color:#ffffff; }
.ticket-situation-waiting-ti { background:#9a744f; border-color:#c59a6f; }
.ticket-situation-cancelled { background:#64748b; border-color:#94a3b8; }
.ticket-situation-closed { background:#ef4444; border-color:#fb7185; }
.ticket-situation-progress { background:#facc15; border-color:#fde047; }
.ticket-situation-third-party { background:#c026d3; border-color:#e879f9; }
.ticket-situation-user-waiting { background:#f97316; border-color:#fb923c; }
.ticket-situation-user-return { background:#c026d3; border-color:#e879f9; }
.ticket-situation-neutral { background:#94a3b8; border-color:#cbd5e1; }
.ticket-situation-heading,
.ticket-situation-cell {
    width:76px;
    text-align:center !important;
}
.ticket-situation-cell .ticket-situation-dot {
    width:16px;
    height:16px;
    flex-basis:16px;
}
.ticket-situation-row-label { display:none; }
.ticket-situation-inline {
    padding:6px 9px;
    border:1px solid rgba(148,163,184,.18);
    border-radius:6px;
    background:rgba(15,23,42,.54);
}
.ticket-situation-inline-compact {
    justify-content:flex-end;
    max-width:210px;
    text-align:right;
}

html[data-theme="light"] .ticket-situation-legend {
    border-color:#c8ddf3;
    border-left-color:#1679d3;
    background:#f7fbff;
    box-shadow:0 8px 20px rgba(32,91,145,.07);
}
html[data-theme="light"] .ticket-situation-legend-heading strong { color:#0b2944; }
html[data-theme="light"] .ticket-situation-legend-heading span { color:#526b82; }
html[data-theme="light"] .ticket-situation-legend-item,
html[data-theme="light"] .ticket-situation-inline {
    color:#17344f;
    border-color:#d7e4ef;
    background:#ffffff;
}
html[data-theme="light"] .ticket-situation-dot {
    box-shadow:0 0 0 2px #dfeaf4;
}
html[data-theme="light"] .ticket-situation-allocated {
    border-color:#94a3b8;
    background:#ffffff;
}

@media (max-width: 900px) {
    .ticket-situation-legend { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
    .ticket-situation-legend {
        padding:12px;
        gap:10px;
    }
    .ticket-situation-legend-items {
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
    .ticket-situation-legend-item { align-items:flex-start; }
    .app-table .ticket-situation-cell {
        width:100%;
        justify-content:flex-end;
        align-items:center;
        text-align:right !important;
    }
    .ticket-situation-row-label {
        display:inline;
        color:#dce8f5;
        font-size:12px;
        font-weight:800;
    }
    html[data-theme="light"] .ticket-situation-row-label { color:#17344f; }
}
@media (max-width: 430px) {
    .ticket-situation-legend-items { grid-template-columns:1fr; }
}
/* Tooltip das bolinhas de situação. */
.ticket-situation-dot[data-situation-label] {
    position:relative;
    cursor:help;
    outline:none;
}
.ticket-situation-dot[data-situation-label]::before,
.ticket-situation-dot[data-situation-label]::after {
    position:absolute;
    top:50%;
    z-index:40;
    pointer-events:none;
    opacity:0;
    transition:opacity .16s ease, transform .16s ease;
}
.ticket-situation-dot[data-situation-label]::before {
    content:"";
    left:calc(100% + 2px);
    border:6px solid transparent;
    border-right-color:#3b82f6;
    transform:translate(4px,-50%);
}
.ticket-situation-dot[data-situation-label]::after {
    content:attr(data-situation-label);
    left:calc(100% + 14px);
    min-width:max-content;
    max-width:min(250px, 62vw);
    padding:8px 10px;
    border:1px solid #3b82f6;
    border-radius:6px;
    background:#0b2944;
    color:#f8fbff;
    box-shadow:0 10px 24px rgba(2,18,35,.28);
    font-size:12px;
    font-weight:800;
    line-height:1.25;
    text-align:left;
    white-space:nowrap;
    transform:translate(4px,-50%);
}
.ticket-situation-dot[data-situation-label]:hover::before,
.ticket-situation-dot[data-situation-label]:hover::after,
.ticket-situation-dot[data-situation-label]:focus-visible::before,
.ticket-situation-dot[data-situation-label]:focus-visible::after {
    opacity:1;
    transform:translate(0,-50%);
}
.ticket-situation-dot[data-situation-label]:focus-visible {
    outline:3px solid rgba(96,165,250,.52);
    outline-offset:4px;
}
html[data-theme="light"] .ticket-situation-dot[data-situation-label]::after {
    border-color:#1679d3;
    background:#0b3c68;
    color:#ffffff;
    box-shadow:0 10px 24px rgba(19,72,116,.22);
}
html[data-theme="light"] .ticket-situation-dot[data-situation-label]::before {
    border-right-color:#1679d3;
}
@media (max-width:760px) {
    .ticket-situation-dot[data-situation-label]::before,
    .ticket-situation-dot[data-situation-label]::after {
        display:none;
    }
}
/* QA accessibility focus fallback */
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 3px solid #60a5fa;
    outline-offset: 3px;
}

/* Portal público de solicitações. */
.public-portal {
    background:#0b1220;
}
.public-portal .public-main {
    min-height:calc(100vh - 142px);
}
.public-topbar {
    position:relative;
}
.public-brand {
    min-width:220px;
    text-decoration:none;
}
.public-brand-mark {
    display:grid;
    width:46px;
    height:46px;
    place-items:center;
    border:1px solid rgba(147,197,253,.42);
    border-radius:10px;
    background:#102544;
    box-shadow:0 8px 18px rgba(2,18,35,.20);
}
.public-brand-mark img {
    width:34px;
    height:34px;
    object-fit:contain;
}
.public-nav .app-btn {
    min-height:42px;
    padding:9px 15px;
    font-size:.9rem;
    white-space:nowrap;
}
.public-page-heading {
    position:relative;
    max-width:740px;
    padding-left:18px;
}
.public-page-heading::before {
    position:absolute;
    top:5px;
    bottom:5px;
    left:0;
    width:4px;
    border-radius:4px;
    background:#38bdf8;
    content:"";
}
.public-page-heading h1 {
    font-size:2.15rem;
    line-height:1.08;
}
.public-ticket-wizard {
    overflow:hidden;
    border-color:rgba(96,165,250,.32);
    box-shadow:0 20px 46px rgba(2,18,35,.18);
}
.public-ticket-wizard .wizard-progress {
    margin:-2rem -2rem 30px;
    padding:16px 2rem;
    border-bottom:1px solid rgba(148,163,184,.18);
    background:rgba(15,35,64,.75);
}
.public-ticket-wizard .wizard-step > h2 {
    font-size:1.45rem;
}
.public-ticket-wizard .wizard-step > p {
    max-width:680px;
    line-height:1.55;
}
.public-ticket-wizard .public-requester-card {
    display:grid;
    gap:2px;
    border-color:rgba(96,165,250,.32);
    border-left:4px solid #38bdf8;
    background:#102544;
    box-shadow:none;
}
.public-ticket-wizard .requester-card strong {
    font-size:1rem;
}
.public-ticket-wizard .wizard-input {
    min-height:52px;
    border-color:rgba(148,163,184,.34);
    font-size:.95rem;
}
.public-ticket-wizard .wizard-input:hover {
    border-color:rgba(96,165,250,.74);
}
.public-ticket-wizard .topic-card {
    min-height:84px;
    border-radius:10px;
}
.public-ticket-wizard .app-btn {
    min-height:46px;
}
.public-tracking-page {
    padding-top:4px;
}
.public-tracking-form {
    position:relative;
    overflow:hidden;
    border-color:rgba(96,165,250,.30);
    box-shadow:0 18px 40px rgba(2,18,35,.14);
}
.public-tracking-form::before {
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:4px;
    background:#38bdf8;
    content:"";
}
.public-tracking-form label > span {
    color:#cbd5e1;
}
.public-tracking-form .wizard-input {
    min-height:54px;
    font-size:1rem;
}
.public-tracking-form .app-btn {
    min-width:128px;
    min-height:54px;
}
.public-tracking-page .ticket-success-hero {
    padding:28px 32px;
}
.public-tracking-page .success-info,
.public-ticket-details .success-info {
    min-height:92px;
    border-color:rgba(148,163,184,.22);
    background:rgba(15,35,64,.64);
}
.public-ticket-details .app-card {
    box-shadow:0 16px 34px rgba(2,18,35,.14);
}
.public-ticket-details .ticket-chat-card {
    box-shadow:0 16px 34px rgba(2,18,35,.16);
}
.public-footer {
    color:#94a3b8;
}

html[data-theme="light"] .public-portal {
    background:#eef5fb;
    color:#102a43;
}
html[data-theme="light"] .public-topbar {
    border-color:#c5d9ea;
    background:#ffffff;
    box-shadow:0 1px 0 rgba(23,82,131,.08), 0 8px 22px rgba(39,87,126,.06);
}
html[data-theme="light"] .public-brand-mark {
    border-color:#bdd7ec;
    background:#eaf4fc;
    box-shadow:none;
}
html[data-theme="light"] .public-brand strong { color:#102a43; }
html[data-theme="light"] .public-brand span:first-child { color:#1679d3; }
html[data-theme="light"] .public-page-heading h1 { color:#0b2944; }
html[data-theme="light"] .public-page-heading p { color:#496681; }
html[data-theme="light"] .public-ticket-wizard,
html[data-theme="light"] .public-tracking-form,
html[data-theme="light"] .public-ticket-details .app-card {
    border-color:#c5dced;
    background:#ffffff;
    box-shadow:0 16px 34px rgba(39,87,126,.10);
}
html[data-theme="light"] .public-ticket-wizard .wizard-progress {
    border-color:#d7e6f2;
    background:#f6faff;
}
html[data-theme="light"] .public-ticket-wizard .wizard-step > h2 { color:#0b2944; }
html[data-theme="light"] .public-ticket-wizard .wizard-step > p { color:#496681; }
html[data-theme="light"] .public-ticket-wizard .public-requester-card {
    border-color:#c5dced;
    border-left-color:#1679d3;
    background:#f3f9fe;
}
html[data-theme="light"] .public-ticket-wizard .requester-card strong { color:#123757; }
html[data-theme="light"] .public-ticket-wizard .requester-card span,
html[data-theme="light"] .public-ticket-wizard .requester-card small,
html[data-theme="light"] .public-ticket-wizard label span,
html[data-theme="light"] .public-tracking-form label > span { color:#496681; }
html[data-theme="light"] .public-ticket-wizard .wizard-input,
html[data-theme="light"] .public-tracking-form .wizard-input {
    border-color:#b9d3e7;
    background:#ffffff;
    color:#102a43;
}
html[data-theme="light"] .public-ticket-wizard .topic-card {
    border-color:#c5dced;
    background:#f6faff;
    color:#164367;
}
html[data-theme="light"] .public-ticket-wizard .topic-card:hover,
html[data-theme="light"] .public-ticket-wizard .topic-card.active {
    border-color:#1679d3;
    background:#1679d3;
    color:#ffffff;
}
html[data-theme="light"] .public-tracking-page .success-info,
html[data-theme="light"] .public-ticket-details .success-info {
    border-color:#c5dced;
    background:#f6faff;
}
html[data-theme="light"] .public-ticket-details .ticket-chat-card {
    border-color:#c5dced;
    background:#ffffff;
    box-shadow:0 16px 34px rgba(39,87,126,.10);
}
html[data-theme="light"] .public-ticket-details .ticket-chat-body { background:#edf6fc; }
html[data-theme="light"] .public-ticket-details .chat-compose { background:#f8fbfe; }
html[data-theme="light"] .public-ticket-details .chat-message-other .chat-bubble { background:#ffffff; }
html[data-theme="light"] .public-footer { color:#496681; }

/* Consulta pública de ticket: cartões em destaque. */
html[data-theme="light"] .public-tracking-page {
    max-width:1180px;
    padding-block:26px 40px;
}
.public-tracking-heading { display:none; }
html[data-theme="light"] .public-tracking-search {
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:28px;
    align-items:center;
    max-width:none;
    margin:0 0 30px;
    padding:32px 28px;
    overflow:visible;
    border:1px solid #c6dced;
    border-radius:17px;
    background:#fff;
    box-shadow:0 16px 34px rgba(30,81,123,.11);
}
html[data-theme="light"] .public-tracking-search::before { display:none; }
.tracking-search-icon {
    display:grid;
    width:64px;
    height:64px;
    place-items:center;
    border-radius:18px;
    background:#eaf4ff;
    color:#0969d7;
}
.tracking-search-icon svg,
.tracking-search-action svg {
    width:31px;
    height:31px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-width:2.05;
}
.tracking-search-field { min-width:0; }
html[data-theme="light"] .public-tracking-search .tracking-search-field > span {
    display:block;
    margin:0 0 9px;
    color:#0c1f3b;
    font-size:14px;
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
}
html[data-theme="light"] .public-tracking-search .wizard-input {
    width:100%;
    min-height:60px;
    padding:14px 17px;
    border:1px solid #b9d3e9;
    border-radius:12px;
    background:#fff;
    color:#102a43;
    font-size:20px;
    font-weight:700;
    line-height:1.2;
    box-shadow:none;
}
html[data-theme="light"] .public-tracking-search .wizard-input:focus {
    border-color:#1679d3;
    box-shadow:0 0 0 4px rgba(22,121,211,.13);
}
.tracking-search-field small {
    display:block;
    margin-top:8px;
    color:#68819b;
    font-size:14px;
    line-height:1.35;
}
.tracking-search-action { align-self:center; padding-top:23px; }
.public-tracking-search .tracking-search-action .app-btn {
    display:inline-flex;
    min-width:213px;
    min-height:60px;
    align-items:center;
    justify-content:center;
    gap:14px;
    border:0;
    border-radius:13px;
    font-size:18px;
    font-weight:800;
    box-shadow:0 12px 20px rgba(5,91,192,.20);
}
.public-tracking-search .tracking-search-action svg { width:27px; height:27px; }
html[data-theme="light"] .public-request-history {
    margin:0 0 30px;
    padding:26px 28px;
    border:1px solid #c6dced;
    border-radius:17px;
    background:#fff;
    box-shadow:0 14px 30px rgba(30,81,123,.08);
}
.public-request-history-heading { display:flex; align-items:flex-start; gap:15px; }
.public-request-history-icon {
    display:grid;
    width:52px;
    height:52px;
    flex:0 0 auto;
    place-items:center;
    border:1px solid #cbe4fa;
    border-radius:14px;
    background:#edf7ff;
    color:#0872d6;
}
.public-request-history-icon svg {
    width:28px;
    height:28px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.9;
}
.public-request-history-heading div { min-width:0; }
.public-request-history-heading p {
    margin:1px 0 4px;
    color:#0a70d6;
    font-size:12px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.public-request-history-heading h2 {
    margin:0;
    color:#0c2340;
    font-size:23px;
    font-weight:900;
    line-height:1.2;
}
.public-request-history-heading span {
    display:block;
    margin-top:5px;
    color:#5f7894;
    font-size:14px;
    line-height:1.4;
}
.public-request-history-form {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(180px,.44fr) auto;
    gap:14px;
    align-items:end;
    margin-top:23px;
}
.public-request-history-form label { min-width:0; }
.public-request-history-form label > span {
    display:block;
    margin-bottom:8px;
    color:#173451;
    font-size:13px;
    font-weight:850;
}
html[data-theme="light"] .public-request-history-form .wizard-input {
    width:100%;
    min-height:51px;
    padding:12px 14px;
    border:1px solid #b7d4ea;
    border-radius:11px;
    background:#fff;
    color:#123350;
    font-size:15px;
    box-shadow:none;
}
html[data-theme="light"] .public-request-history-form .wizard-input:focus {
    border-color:#0872d7;
    box-shadow:0 0 0 4px rgba(8,114,215,.12);
}
.public-request-history-form .app-btn {
    min-height:51px;
    gap:9px;
    padding:11px 17px;
    border:0;
    border-radius:11px;
    font-size:15px;
    white-space:nowrap;
}
.public-request-history-form .app-btn svg {
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-width:2;
}
.public-request-history-alert { margin-top:18px; }
.public-request-history-result { margin-top:24px; padding-top:20px; border-top:1px solid #d9e8f4; }
.public-request-history-result-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:12px; }
.public-request-history-result-heading strong { color:#153652; font-size:15px; font-weight:900; }
.public-request-history-result-heading span { overflow:hidden; color:#62809e; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.public-request-history-list { display:grid; gap:10px; }
.public-request-history-ticket {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:16px;
    align-items:center;
    padding:16px 17px;
    border:1px solid #d1e3f1;
    border-radius:13px;
    background:#fbfdff;
}
.public-request-history-ticket-main { min-width:0; }
.public-request-history-protocol {
    display:inline-flex;
    margin-right:8px;
    padding:5px 8px;
    border-radius:8px;
    background:#e8f4ff;
    color:#0868ca;
    font-size:12px;
    font-weight:900;
    vertical-align:middle;
}
.public-request-history-ticket strong { color:#102b49; font-size:15px; font-weight:900; overflow-wrap:anywhere; }
.public-request-history-ticket small { display:block; margin-top:7px; color:#607c97; font-size:13px; line-height:1.35; }
.public-request-history-status {
    display:inline-flex;
    min-width:116px;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:8px 10px;
    border-radius:999px;
    background:#eff5fa;
    color:#3c5e78;
    font-size:12px;
    font-weight:850;
    white-space:nowrap;
}
.public-request-history-status.is-open { background:#eaf8ef; color:#147142; }
.public-request-history-status .ticket-situation-dot { width:10px; height:10px; }
.public-request-history-link { color:#0868ca; font-size:13px; font-weight:900; text-decoration:none; white-space:nowrap; }
.public-request-history-link:hover { color:#074f9b; text-decoration:underline; }
.public-request-history-link span { margin-left:5px; font-size:17px; vertical-align:-1px; }
.public-request-history-empty { padding:20px; border:1px dashed #b9d8ef; border-radius:12px; background:#f6fbff; color:#587691; font-size:14px; text-align:center; }
.public-request-history-pagination { display:flex; align-items:center; justify-content:center; gap:16px; margin-top:17px; color:#58738e; font-size:13px; font-weight:750; }
.public-request-history-pagination a { color:#0869cb; text-decoration:none; }
.public-request-history-pagination a:hover { text-decoration:underline; }
@media (max-width:760px) {
    html[data-theme="light"] .public-request-history { padding:21px 18px; }
    .public-request-history-form { grid-template-columns:1fr; gap:13px; margin-top:19px; }
    .public-request-history-form .app-btn { width:100%; justify-content:center; }
    .public-request-history-ticket { grid-template-columns:1fr; gap:12px; padding:15px; }
    .public-request-history-status { width:fit-content; min-width:0; }
    .public-request-history-link { width:100%; padding-top:11px; border-top:1px solid #e0ecf5; }
}
@media (max-width:460px) {
    .public-request-history-heading { gap:12px; }
    .public-request-history-icon { width:45px; height:45px; border-radius:12px; }
    .public-request-history-icon svg { width:24px; height:24px; }
    .public-request-history-heading h2 { font-size:20px; }
    .public-request-history-heading span { font-size:13px; }
    .public-request-history-result-heading { align-items:flex-start; flex-direction:column; gap:5px; }
    .public-request-history-result-heading span { max-width:100%; }
}
html[data-theme="light"] .ticket-tracking-result {
    max-width:none;
    overflow:hidden;
    border:1px solid #bcd7ef;
    border-radius:18px;
    background:#fff;
    box-shadow:0 19px 40px rgba(30,81,123,.13);
}
.ticket-tracking-hero {
    position:relative;
    display:flex;
    min-height:214px;
    gap:28px;
    align-items:center;
    padding:36px 46px;
    overflow:hidden;
    background:linear-gradient(115deg,#075cc9 0%,#0875de 51%,#29a3fa 100%);
    color:#fff;
    isolation:isolate;
}
.ticket-tracking-hero::before,
.ticket-tracking-hero::after {
    position:absolute;
    z-index:-1;
    width:62%;
    height:190%;
    border-radius:48%;
    background:rgba(255,255,255,.10);
    content:"";
    transform:rotate(-18deg);
}
.ticket-tracking-hero::before { top:-83%; right:-12%; }
.ticket-tracking-hero::after { bottom:-123%; right:13%; background:rgba(0,55,171,.14); }
.ticket-tracking-hero-icon {
    display:grid;
    flex:0 0 auto;
    width:82px;
    height:82px;
    place-items:center;
    border:1px solid rgba(255,255,255,.23);
    border-radius:50%;
    background:rgba(255,255,255,.17);
    box-shadow:inset 0 1px rgba(255,255,255,.22);
}
.ticket-tracking-hero-icon svg {
    width:39px;
    height:39px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.8;
}
.ticket-tracking-hero-content { min-width:0; }
.ticket-tracking-hero-content p {
    margin:0 0 4px;
    color:#fff;
    font-size:14px;
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
}
.ticket-tracking-hero-content h2 {
    margin:0;
    color:#fff;
    font-size:42px;
    font-weight:900;
    letter-spacing:0;
    line-height:1.04;
}
.ticket-tracking-hero-content span { display:block; margin-top:6px; font-size:19px; font-weight:500; line-height:1.35; }
.ticket-tracking-details { padding:26px 28px 21px; background:#fff; }
.ticket-tracking-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 26px; }
.ticket-tracking-info {
    display:flex;
    min-width:0;
    min-height:123px;
    gap:19px;
    align-items:center;
    padding:22px 26px;
    border:1px solid #d2e1f1;
    border-radius:15px;
    background:#fbfdff;
}
.ticket-tracking-info-status.is-open { border-color:#c6e7d8; background:linear-gradient(105deg,#f2fcf6,#fbfffd); }
.ticket-tracking-info-icon {
    display:grid;
    flex:0 0 auto;
    width:64px;
    height:64px;
    place-items:center;
    border-radius:50%;
    background:#e6f6ed;
}
.ticket-tracking-info-icon .ticket-situation-dot { width:22px; height:22px; box-shadow:0 0 0 11px rgba(37,164,92,.08); }
.ticket-tracking-info-icon svg {
    width:31px;
    height:31px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.9;
}
.ticket-tracking-info-icon.is-blue { color:#076ad6; background:#e5f1ff; }
.ticket-tracking-info-icon.is-violet { color:#5442d9; background:#eeecff; }
.ticket-tracking-info-icon.is-amber { color:#ca7800; background:#fff2d2; }
.ticket-tracking-info-icon.is-sky { color:#0872d2; background:#e5f3ff; }
.ticket-tracking-info div { min-width:0; }
.ticket-tracking-info small {
    display:block;
    margin:0 0 6px;
    color:#637895;
    font-size:13px;
    font-weight:900;
    letter-spacing:.02em;
    line-height:1.2;
    text-transform:uppercase;
}
.ticket-tracking-info strong {
    display:block;
    overflow-wrap:anywhere;
    color:#0a1730;
    font-size:25px;
    font-weight:850;
    line-height:1.16;
}
.ticket-tracking-info-status.is-open strong { color:#12723d; }
.ticket-tracking-info-update { grid-column:1 / -1; min-height:116px; }
.ticket-tracking-footer {
    display:flex;
    padding:0 28px 28px;
    border-top:1px solid #d8e6f2;
    background:#fff;
}
.ticket-tracking-cta {
    display:inline-flex;
    min-height:68px;
    align-items:center;
    gap:15px;
    margin-top:26px;
    padding:15px 25px;
    border:0;
    border-radius:13px;
    font-size:19px;
    font-weight:850;
    box-shadow:0 12px 22px rgba(5,91,192,.18);
}
.ticket-tracking-cta svg { width:28px; height:28px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.85; }
.ticket-tracking-cta .ticket-tracking-arrow { width:25px; margin-left:8px; }

@media (max-width:760px) {
    html[data-theme="light"] .public-tracking-page { padding-block:14px 28px; }
    html[data-theme="light"] .public-tracking-search { grid-template-columns:48px minmax(0,1fr); gap:17px; padding:20px; border-radius:15px; }
    .tracking-search-icon { width:48px; height:48px; border-radius:14px; }
    .tracking-search-icon svg { width:25px; height:25px; }
    .tracking-search-action { grid-column:1 / -1; width:100%; padding-top:0; }
    .public-tracking-search .tracking-search-action .app-btn { width:100%; min-width:0; min-height:54px; }
    html[data-theme="light"] .public-tracking-search .wizard-input { min-height:54px; font-size:17px; }
    .ticket-tracking-hero { min-height:0; gap:16px; padding:29px 22px; }
    .ticket-tracking-hero-icon { width:55px; height:55px; }
    .ticket-tracking-hero-icon svg { width:28px; height:28px; }
    .ticket-tracking-hero-content h2 { font-size:32px; }
    .ticket-tracking-hero-content span { font-size:15px; }
    .ticket-tracking-details { padding:18px; }
    .ticket-tracking-grid { grid-template-columns:1fr; gap:14px; }
    .ticket-tracking-info,
    .ticket-tracking-info-update { grid-column:auto; min-height:96px; gap:14px; padding:16px; }
    .ticket-tracking-info-icon { width:52px; height:52px; }
    .ticket-tracking-info-icon svg { width:26px; height:26px; }
    .ticket-tracking-info strong { font-size:20px; }
    .ticket-tracking-footer { padding:0 18px 18px; }
    .ticket-tracking-cta { width:100%; min-height:58px; justify-content:center; gap:10px; margin-top:18px; padding:12px 16px; font-size:16px; }
    .ticket-tracking-cta svg { width:23px; height:23px; }
    .ticket-tracking-cta .ticket-tracking-arrow { width:21px; margin-left:auto; }
}

@media (max-width:640px) {
    .public-topbar .mx-auto { align-items:flex-start; }
    .public-brand { min-width:0; }
    .public-brand-mark { width:40px; height:40px; }
    .public-brand-mark img { width:30px; height:30px; }
    .public-nav { width:100%; }
    .public-nav .app-btn { flex:1; }
    .public-page-heading { padding-left:14px; }
    .public-page-heading h1 { font-size:1.8rem; }
    .public-ticket-wizard .wizard-progress { margin:-1.25rem -1.25rem 24px; padding:13px 1.25rem; }
    .public-ticket-wizard .topic-card { min-height:68px; }
    .public-tracking-form .app-btn { width:100%; }
}

/* Confirmação de abertura de ticket. */
.ticket-success-page { padding-block:clamp(4px, 1.5vw, 18px); }
.ticket-success-card {
    overflow:hidden;
    border:1px solid #c8dced;
    border-radius:23px;
    background:#fff;
    box-shadow:0 18px 42px rgba(47,91,130,.12);
}
.ticket-success-banner {
    padding:63px 28px 69px;
    text-align:center;
    background:#fff;
}
.ticket-success-check {
    display:grid;
    width:34px;
    height:34px;
    margin:0 auto 22px;
    place-items:center;
}
.ticket-success-check svg { width:28px; height:28px; fill:none; stroke:#1266d6; stroke-linecap:round; stroke-linejoin:round; stroke-width:3.5; }
.ticket-success-kicker { margin:0; color:#3c587a; font-size:13px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.ticket-success-number { margin:14px 0 8px; color:#0d2c4b; font-size:clamp(44px, 6vw, 68px); font-weight:900; line-height:1; }
.ticket-success-copy { max-width:680px; margin:0 auto; color:#3d5c7d; font-size:clamp(15px, 2.3vw, 20px); line-height:1.45; }
.ticket-success-content { padding:0 36px 31px; }
.ticket-success-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.ticket-success-metric { min-width:0; padding:21px; border:1px solid #d4e2f1; border-radius:14px; background:#fbfdff; }
.ticket-success-metric-icon { display:grid; width:48px; height:48px; margin-bottom:17px; place-items:center; border-radius:14px; }
.ticket-success-metric-icon svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
.ticket-success-metric-icon.is-protocol { color:#1268d5; background:#dbeeff; }
.ticket-success-metric-icon.is-status { color:#168747; background:#d9f5e4; }
.ticket-success-metric-icon.is-topic { color:#5646e9; background:#e8e6ff; }
.ticket-success-metric-icon.is-assignee { color:#e46118; background:#ffeadf; }
.ticket-success-metric-label { display:block; overflow:hidden; color:#5b789d; font-size:12px; font-weight:900; letter-spacing:.03em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.ticket-success-metric strong { display:block; overflow-wrap:anywhere; margin-top:7px; color:#10294a; font-size:clamp(16px, 1.5vw, 22px); font-weight:900; line-height:1.22; }
.ticket-success-actions { display:flex; justify-content:flex-end; gap:12px; margin-top:28px; padding-top:27px; border-top:1px solid #dce8f5; }
.ticket-success-actions .app-btn { min-height:50px; padding-inline:25px; }
.ticket-success-secondary { border:1px solid #8db5ec; background:#fff; color:#0e60c5; box-shadow:none; }
.ticket-success-secondary:hover { border-color:#1a6ed6; background:#edf6ff; color:#084da4; }
html[data-theme="dark"] .ticket-success-card { border-color:#294564; background:#0e1d34; box-shadow:0 24px 56px rgba(0,0,0,.25); }
html[data-theme="dark"] .ticket-success-banner { background:#0e1d34; }
html[data-theme="dark"] .ticket-success-kicker { color:#acc9ee; }
html[data-theme="dark"] .ticket-success-number { color:#f3f8ff; }
html[data-theme="dark"] .ticket-success-copy { color:#b5cce5; }
html[data-theme="dark"] .ticket-success-metric { border-color:#294564; background:#11223c; }
html[data-theme="dark"] .ticket-success-metric-label { color:#a8c0dd; }
html[data-theme="dark"] .ticket-success-metric strong { color:#f3f8ff; }
html[data-theme="dark"] .ticket-success-actions { border-color:#294564; }
html[data-theme="dark"] .ticket-success-secondary { border-color:#4b7cae; background:#142946; color:#d8eaff; }
html[data-theme="dark"] .ticket-success-secondary:hover { border-color:#7cb1ed; background:#1b3658; color:#fff; }
@media (max-width:900px) { .ticket-success-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) {
    .ticket-success-banner { padding:42px 20px 46px; }
    .ticket-success-check { width:30px; height:30px; margin-bottom:18px; }
    .ticket-success-content { padding:20px; }
    .ticket-success-metrics { grid-template-columns:1fr; gap:12px; }
    .ticket-success-metric { display:grid; grid-template-columns:48px 1fr; column-gap:15px; align-items:center; padding:16px; }
    .ticket-success-metric-icon { grid-row:span 2; margin:0; }
    .ticket-success-metric strong { margin-top:3px; }
    .ticket-success-actions { flex-direction:column-reverse; margin-top:22px; padding-top:20px; }
    .ticket-success-actions .app-btn { width:100%; justify-content:center; }
}

/* Referência visual da confirmação de abertura. */
.ticket-success-page {
    width:min(calc(100% - 48px), 1350px);
    max-width:none;
    padding-block:38px;
}
.ticket-success-card { border-color:#d4e2f1; border-radius:26px; box-shadow:0 24px 52px rgba(28,74,115,.15); }
.ticket-success-banner {
    position:relative;
    isolation:isolate;
    min-height:360px;
    padding:28px 24px 32px;
    color:#fff;
    background:linear-gradient(122deg,#075bce 0%,#0879e6 51%,#2d9df1 100%);
}
.ticket-success-banner::before,
.ticket-success-banner::after {
    position:absolute;
    z-index:-1;
    width:370px;
    height:370px;
    border-radius:50%;
    background:rgba(255,255,255,.065);
    content:"";
}
.ticket-success-banner::before { top:-198px; left:-174px; }
.ticket-success-banner::after { right:-168px; bottom:-220px; }
.ticket-success-emblem { position:relative; display:grid; width:128px; height:106px; margin:0 auto 3px; place-items:center; }
.ticket-success-rays { position:absolute; width:128px; height:82px; fill:none; stroke:#8ed3ff; stroke-linecap:round; stroke-width:6; }
.ticket-success-check {
    position:relative;
    width:78px;
    height:78px;
    margin:0;
    border:13px solid rgba(255,255,255,.17);
    border-radius:50%;
    background:#fff;
    box-shadow:0 0 0 13px rgba(255,255,255,.10);
}
.ticket-success-check svg { width:40px; height:40px; stroke:#075bce; stroke-width:3.4; }
.ticket-success-kicker { color:#fff; font-size:clamp(17px, 1.9vw, 26px); letter-spacing:.025em; }
.ticket-success-number { margin:10px 0 10px; color:#fff; font-size:clamp(48px, 5.8vw, 78px); }
.ticket-success-copy { max-width:760px; color:#fff; font-size:clamp(16px, 1.7vw, 22px); }
.ticket-success-content { padding:29px 32px 31px; background:#fff; }
.ticket-success-metrics { gap:18px; }
.ticket-success-metric { min-height:158px; padding:18px 22px; border-color:#dce8f5; border-radius:16px; background:#fbfdff; }
.ticket-success-metric-icon { width:54px; height:54px; margin-bottom:15px; border-radius:15px; }
.ticket-success-metric-icon svg { width:29px; height:29px; }
.ticket-success-metric-label { color:#7187a6; font-size:14px; }
.ticket-success-metric strong { margin-top:6px; color:#0c203d; font-size:23px; }
.ticket-success-actions { gap:14px; margin-top:31px; padding-top:26px; border-color:#dce8f5; }
.ticket-success-actions .app-btn { min-height:58px; padding-inline:25px; border-radius:10px; font-size:17px; }
.ticket-success-actions .app-btn svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.1; }
.ticket-success-secondary { border-color:#8bb9f2; color:#0756cf; }
html[data-theme="dark"] .ticket-success-banner { background:linear-gradient(122deg,#073f89 0%,#0759b2 51%,#1477c1 100%); }
html[data-theme="dark"] .ticket-success-content { background:#0e1d34; }
@media (max-width:900px) {
    .ticket-success-page { width:min(calc(100% - 32px), 760px); }
    .ticket-success-banner { min-height:auto; padding-block:32px; }
    .ticket-success-emblem { transform:scale(.86); margin-bottom:-4px; }
    .ticket-success-kicker { font-size:18px; }
    .ticket-success-metric-label { font-size:14px; }
    .ticket-success-metric strong { font-size:22px; }
    .ticket-success-actions .app-btn { min-height:56px; font-size:16px; }
    .ticket-success-actions .app-btn svg { width:20px; height:20px; }
}
@media (max-width:560px) {
    .ticket-success-page { width:calc(100% - 24px); padding-block:12px; }
    .ticket-success-banner { padding:34px 18px 40px; }
    .ticket-success-content { padding:20px; }
    .ticket-success-metric { min-height:0; padding:16px; }
    .ticket-success-actions { gap:10px; margin-top:26px; padding-top:20px; }
}

/* Abertura pública de tickets. */
.ticket-open-wrap { max-width:1180px; }
.ticket-open-heading { max-width:880px; padding-left:0; }
.ticket-open-heading::before { display:none; }
.ticket-open-heading .ticket-open-eyebrow {
    margin:0 0 5px;
    color:#166dce;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.ticket-open-heading h1 { margin:0; color:#102e55; font-size:clamp(2rem,4vw,2.85rem); letter-spacing:0; }
.ticket-open-heading > p:last-child { max-width:620px; margin-top:7px; color:#4c6d91; font-size:1rem; }
.ticket-open-wizard {
    overflow:visible;
    border:1px solid #c9dff1;
    border-radius:18px;
    background:#fff;
    box-shadow:0 16px 38px rgba(39,87,126,.11);
}
.ticket-open-wizard .wizard-progress { display:none; }
.ticket-open-steps {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    margin:0 0 38px;
    padding:4px 6px 0;
}
.ticket-open-stage {
    position:relative;
    display:grid;
    justify-items:center;
    gap:9px;
    min-width:0;
    color:#6d86a1;
    font-size:.78rem;
    font-weight:800;
    line-height:1.2;
    text-align:center;
}
.ticket-open-stage::after {
    position:absolute;
    top:17px;
    left:calc(50% + 22px);
    width:calc(100% - 44px);
    height:2px;
    background:#d5e3f0;
    content:"";
}
.ticket-open-stage:last-child::after { display:none; }
.ticket-open-stage-number {
    z-index:1;
    display:grid;
    width:36px;
    height:36px;
    place-items:center;
    border:1px solid #d6e4f1;
    border-radius:50%;
    background:#f2f7fc;
    color:#507093;
    font-size:.9rem;
    font-weight:900;
}
.ticket-open-stage.is-active { color:#075fc9; }
.ticket-open-stage.is-active .ticket-open-stage-number { border-color:#0969d9; background:#0969d9; color:#fff; box-shadow:0 7px 17px rgba(9,105,217,.22); }
.ticket-open-stage.is-complete { color:#238759; }
.ticket-open-stage.is-complete .ticket-open-stage-number { border-color:#1da96a; background:#1da96a; color:transparent; }
.ticket-open-stage.is-complete .ticket-open-stage-number::after { color:#fff; content:"✓"; font-size:1rem; }
.ticket-open-stage.is-complete::after { background:#64c995; }
.ticket-open-step-intro { display:flex; align-items:flex-start; gap:17px; margin-bottom:27px; }
.ticket-open-step-icon {
    display:grid;
    flex:none;
    width:58px;
    height:58px;
    place-items:center;
    border-radius:13px;
    background:#eaf4ff;
    color:#0865cc;
}
.ticket-open-step-icon svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.ticket-open-step-icon.is-confirmation { background:#e2f8ec; color:#159252; }
.ticket-open-step-count { display:block; margin-bottom:3px; color:#4477ad; font-size:.76rem; font-weight:900; }
.ticket-open-wizard .wizard-step h2 { margin:0; color:#112f56; font-size:clamp(1.55rem,2.4vw,2rem); line-height:1.1; }
.ticket-open-wizard .wizard-step > .ticket-open-step-intro p { margin:5px 0 0; color:#587697; font-size:.97rem; line-height:1.45; }
.ticket-open-wizard .requester-card {
    position:relative;
    overflow:hidden;
    margin-bottom:22px;
    padding:18px 20px 18px 86px;
    border:1px solid #cde3f4;
    border-radius:13px;
    background:#f5faff;
    box-shadow:none;
}
.ticket-open-wizard .requester-card::before {
    position:absolute;
    top:18px;
    left:20px;
    width:46px;
    height:46px;
    border-radius:50%;
    background:#dcefff;
    content:"";
}
.ticket-open-wizard .requester-card::after {
    position:absolute;
    top:29px;
    left:34px;
    width:18px;
    height:18px;
    border:2px solid #0a67cd;
    border-radius:50%;
    content:"";
}
.ticket-open-wizard .requester-card span { color:#5c7a9b; }
.ticket-open-wizard .requester-card strong { color:#153b65; }
.ticket-open-wizard .requester-card small { color:#5a7697; }
.ticket-open-field-grid { margin-top:18px; }
.ticket-open-field > span:first-child { color:#2368af; font-size:.76rem; }
.ticket-open-control {
    display:flex !important;
    align-items:center;
    margin-top:7px;
    border:1px solid #b8d1e7;
    border-radius:9px;
    background:#fff;
    transition:border-color .16s ease, box-shadow .16s ease;
}
.ticket-open-control:focus-within { border-color:#0870d5; box-shadow:0 0 0 3px rgba(8,112,213,.14); }
.ticket-open-control svg { flex:none; width:21px; height:21px; margin:0 13px; fill:none; stroke:#2674bd; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.ticket-open-control .wizard-input {
    min-height:52px;
    margin:0;
    border:0 !important;
    border-radius:0 8px 8px 0;
    background:transparent !important;
    box-shadow:none !important;
}
.ticket-open-control .wizard-input:focus { outline:0; }
.ticket-open-wizard .wizard-input { min-height:52px; border-color:#b8d1e7; background:#fff; color:#153957; }
.ticket-open-wizard .wizard-input:hover { border-color:#6fa8dc; }
.ticket-open-wizard .wizard-input:focus { border-color:#0870d5; box-shadow:0 0 0 3px rgba(8,112,213,.14); }
.ticket-open-wizard .topic-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.ticket-open-wizard .topic-card {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:128px;
    padding:15px 12px;
    border:1px solid #c9deef;
    border-radius:12px;
    background:#f9fcff;
    color:#133a65;
    box-shadow:none;
}
.ticket-open-wizard .topic-card:hover { border-color:#5b9fe2; background:#f1f8ff; color:#075fc9; transform:translateY(-2px); box-shadow:0 8px 18px rgba(38,100,158,.10); }
.ticket-open-wizard .topic-card.active { border-color:#0870d5; background:#edf6ff; color:#075fc9; box-shadow:inset 0 0 0 1px #0870d5; }
.topic-card-icon { display:grid; width:37px; height:37px; margin-bottom:8px; place-items:center; border-radius:10px; background:#e4f1ff; color:#0870d5; }
.topic-card-icon svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
.topic-card-name { font-size:.84rem; font-weight:900; line-height:1.2; }
.ticket-open-wizard .topic-card small { display:block; max-width:180px; margin-top:4px; color:#67809d; font-size:.67rem; font-weight:700; line-height:1.2; }
.ticket-open-wizard .topic-card.active small { color:#3e72a8; }
.topic-card-email .topic-card-icon { background:#e6edff; color:#4b5bdc; }
.topic-card-imp_comum .topic-card-icon { background:#eaf5f3; color:#11856c; }
.topic-card-sistemas .topic-card-icon { background:#f0eaff; color:#7048c7; }
.topic-card-wifi .topic-card-icon,.topic-card-rede .topic-card-icon { background:#e8f4ff; color:#0870d5; }
.topic-card-material .topic-card-icon { background:#fff0e5; color:#c76a12; }
.topic-card-telefonia .topic-card-icon { background:#e9f8eb; color:#23925a; }
.topic-card-outros .topic-card-icon { background:#edf1f5; color:#637d98; }
.ticket-open-wizard #topicoOutrosWrap { margin-top:18px; }
.ticket-open-wizard .ticket-open-detail-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.ticket-open-wizard .ticket-open-detail-grid > label > span:first-child { color:#2368af; font-size:.76rem; }
.ticket-open-wizard .ticket-impact-field { min-width:0; margin:8px 0 0; padding:0; border:0; }
.ticket-open-wizard .ticket-impact-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; clip-path:inset(50%); }
.ticket-open-wizard .ticket-impact-heading { display:flex; align-items:center; gap:9px; margin-bottom:8px; }
.ticket-open-wizard .ticket-impact-heading-icon { display:grid; width:32px; height:32px; flex:none; place-items:center; border-radius:50%; background:#e1f0ff; color:#0874dc; }
.ticket-open-wizard .ticket-impact-heading-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.ticket-open-wizard .ticket-impact-heading h3 { margin:0; color:#09152e; font-size:clamp(.95rem,1.4vw,1.15rem); font-weight:850; line-height:1.15; letter-spacing:-.035em; }
.ticket-open-wizard .ticket-impact-heading p { margin:3px 0 0; color:#67768d; font-size:.7rem; font-weight:400; line-height:1.3; }
.ticket-open-wizard .ticket-impact-options { display:grid; grid-template-columns:minmax(0,1fr); gap:7px; }
.ticket-open-wizard .ticket-impact-choice { position:relative; display:block; min-width:0; cursor:pointer; }
.ticket-open-wizard .ticket-impact-radio { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; clip-path:inset(50%); }
.ticket-open-wizard .ticket-impact-choice-card { position:relative; display:grid; grid-template-columns:16px 36px minmax(0,1fr) 130px; align-items:center; gap:10px; min-height:76px; padding:8px 12px; border:1.5px solid #e4eaf1; border-radius:11px; background:#fff; box-shadow:0 4px 12px rgba(21,42,73,.05); transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease; }
.ticket-open-wizard .ticket-impact-choice:hover .ticket-impact-choice-card { border-color:#83b9ed; transform:translateY(-1px); box-shadow:0 12px 27px rgba(21,42,73,.10); }
.ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card { border-color:#1681ee; background:linear-gradient(110deg,#f0f8ff,#f5faff); box-shadow:0 11px 27px rgba(18,105,194,.11); }
.ticket-open-wizard .ticket-impact-radio:focus-visible + .ticket-impact-choice-card { outline:3px solid rgba(8,112,213,.32); outline-offset:3px; }
.ticket-open-wizard .ticket-impact-choice-check { display:grid; width:16px; height:16px; place-items:center; border:1.5px solid #a9afb4; border-radius:50%; background:#fff; }
.ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card .ticket-impact-choice-check { border-color:#0877e6; }
.ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card .ticket-impact-choice-check::after { width:8px; height:8px; border-radius:50%; background:#0877e6; content:""; }
.ticket-open-wizard .ticket-impact-choice-icon { display:grid; width:36px; height:36px; place-items:center; border-radius:50%; }
.ticket-open-wizard .ticket-impact-choice-icon svg { width:19px; height:19px; fill:currentColor; stroke:none; }
.ticket-open-wizard .ticket-impact-choice-low .ticket-impact-choice-icon { background:#dff7e9; color:#008f52 !important; }
.ticket-open-wizard .ticket-impact-choice-medium .ticket-impact-choice-icon { background:#e0efff; color:#1d6fce !important; }
.ticket-open-wizard .ticket-impact-choice-high .ticket-impact-choice-icon { background:#fde7e8; color:#df292f !important; }
.ticket-open-wizard .ticket-impact-choice-critical .ticket-impact-choice-icon { background:#ffe0e0; color:#b91c1c !important; }
.ticket-open-wizard .ticket-impact-choice-request .ticket-impact-choice-icon { background:#ede9fe; color:#7c3aed !important; }
.ticket-open-wizard .ticket-impact-choice-copy { display:flex; min-width:0; flex-direction:column; gap:2px; padding-right:4px; text-transform:none; }
.ticket-open-wizard .ticket-impact-choice-copy strong { color:#0b1730; font-size:.92rem; font-weight:850; line-height:1.15; letter-spacing:-.025em; }
.ticket-open-wizard .ticket-impact-choice-copy small { max-width:570px; color:#66758c; font-size:.7rem; font-weight:400; line-height:1.25; text-transform:none; }
.ticket-open-wizard .ticket-impact-deadline { display:flex; align-items:center; justify-content:center; gap:7px; min-width:0; min-height:46px; padding-left:10px; border-left:1.5px solid #dce6f2; }
.ticket-open-wizard .ticket-impact-choice .ticket-impact-deadline-icon { display:grid; width:28px; height:28px; flex:none; place-items:center; border-radius:50%; background:#e0efff; color:#0b1934 !important; }
.ticket-open-wizard .ticket-impact-choice-high .ticket-impact-deadline-icon { background:#eef1f4; }
.ticket-open-wizard .ticket-impact-deadline-icon svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ticket-open-wizard .ticket-impact-deadline-value { display:flex; flex-direction:row; align-items:baseline; gap:3px; line-height:1; }
.ticket-open-wizard .ticket-impact-deadline-value strong { color:#0b1730; font-size:1.35rem; font-weight:850; font-variant-numeric:tabular-nums; letter-spacing:-.04em; }
.ticket-open-wizard .ticket-impact-deadline-value small { margin:0; color:#66758c; font-size:.64rem; font-weight:400; text-transform:none; }
.ticket-open-wizard .ticket-impact-choice .ticket-impact-recommended { position:absolute; top:4px; right:5px; padding:2px 6px; border-radius:999px; background:#d7f7e5; color:#087544 !important; font-size:.55rem; font-weight:800; line-height:1; text-transform:none; }
.ticket-open-dynamic-fields { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:16px; }
.ticket-open-dynamic-fields textarea { grid-column:1 / -1; }
.ticket-open-wizard .wizard-summary { gap:12px; margin:0; padding:16px; border-color:#c9e0f2; border-radius:14px; background:#f4faff; }
.ticket-open-wizard .wizard-summary div { min-height:70px; padding:13px 14px; border:1px solid #d3e5f3; border-radius:10px; background:#fff; }
.ticket-open-wizard .wizard-summary span { color:#5c7b9d; font-size:.69rem; }
.ticket-open-wizard .wizard-summary strong { color:#173b64; font-size:.94rem; }
.ticket-open-upload-zone {
    position:relative;
    padding:18px 20px 18px 74px;
    border:1px dashed #56a2e4;
    border-radius:13px;
    background:#f8fcff;
    cursor:pointer;
}
.ticket-open-upload-zone::before {
    position:absolute;
    top:23px;
    left:24px;
    width:31px;
    height:31px;
    border:2px solid #0870d5;
    border-radius:9px;
    content:"";
    transform:rotate(-35deg);
}
.ticket-open-upload-zone > span { color:#2368af; font-size:.76rem; }
.ticket-open-upload-zone .wizard-input { min-height:38px; margin-top:5px; padding:4px 0; border:0; background:transparent; font-size:.8rem; }
.ticket-open-upload-zone small { max-width:620px; color:#5c7898; line-height:1.5; }
.ticket-open-actions { align-items:center; border-top:1px solid #d8e7f3; padding-top:23px; }
.ticket-open-actions .app-btn { min-width:128px; min-height:48px; justify-content:center; border-radius:9px; }
.ticket-open-back { border:1px solid #b8d3eb; background:#eef7ff; color:#075fc9; box-shadow:none; }
.ticket-open-back:hover { border-color:#77afe2; background:#e1f0fd; color:#0754b5; }
html[data-theme="dark"] .ticket-open-heading h1 { color:#f3f8ff; }
html[data-theme="dark"] .ticket-open-heading > p:last-child { color:#afc5dd; }
html[data-theme="dark"] .ticket-open-wizard { border-color:#294b6c; background:#0f2139; box-shadow:0 18px 42px rgba(0,0,0,.24); }
html[data-theme="dark"] .ticket-open-stage { color:#93aac4; }
html[data-theme="dark"] .ticket-open-stage::after { background:#39546e; }
html[data-theme="dark"] .ticket-open-stage-number { border-color:#39546e; background:#152c47; color:#b5cce5; }
html[data-theme="dark"] .ticket-open-wizard .wizard-step h2 { color:#f3f8ff; }
html[data-theme="dark"] .ticket-open-wizard .wizard-step > .ticket-open-step-intro p { color:#b5cce5; }
html[data-theme="dark"] .ticket-open-wizard .requester-card,
html[data-theme="dark"] .ticket-open-wizard .wizard-summary { border-color:#2d526f; background:#112a47; }
html[data-theme="dark"] .ticket-open-wizard .requester-card strong,
html[data-theme="dark"] .ticket-open-wizard .wizard-summary strong { color:#f3f8ff; }
html[data-theme="dark"] .ticket-open-control,
html[data-theme="dark"] .ticket-open-wizard .wizard-input,
html[data-theme="dark"] .ticket-open-wizard .wizard-summary div { border-color:#375773; background:#0d1d33; color:#eff6ff; }
html[data-theme="dark"] .ticket-open-wizard .topic-card { border-color:#375773; background:#11243d; color:#dcecff; }
html[data-theme="dark"] .ticket-open-wizard .topic-card:hover,
html[data-theme="dark"] .ticket-open-wizard .topic-card.active { border-color:#3b9ded; background:#15375d; color:#fff; }
html[data-theme="dark"] .ticket-open-wizard .topic-card small { color:#a9c2dc; }
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-heading h3,
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-choice-copy strong,
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-deadline-value strong { color:#eff6ff; }
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-heading p,
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-choice-copy small,
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-deadline-value small { color:#a9c2dc; }
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-choice-card { border-color:#375773; background:#11243d; }
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-deadline { border-color:#375773; }
html[data-theme="dark"] .ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card { border-color:#3b9ded; background:#15375d; box-shadow:0 8px 22px rgba(0,0,0,.18); }
html[data-theme="dark"] .ticket-open-upload-zone { border-color:#4c9ad8; background:#102743; }
html[data-theme="dark"] .ticket-open-actions { border-color:#2b4d6b; }
@media (max-width:760px) {
    .ticket-open-wizard .ticket-impact-choice-card { grid-template-columns:16px 32px minmax(0,1fr) 108px; gap:8px; min-height:70px; padding:7px 9px; }
    .ticket-open-wizard .ticket-impact-choice-icon { width:32px; height:32px; }
    .ticket-open-wizard .ticket-impact-choice-icon svg { width:17px; height:17px; }
    .ticket-open-wizard .ticket-impact-choice-copy strong { font-size:.85rem; }
    .ticket-open-wizard .ticket-impact-choice-copy small { font-size:.64rem; }
    .ticket-open-wizard .ticket-impact-deadline { gap:6px; min-height:40px; padding-left:7px; }
    .ticket-open-wizard .ticket-impact-choice .ticket-impact-deadline-icon { width:25px; height:25px; }
    .ticket-open-wizard .ticket-impact-deadline-icon svg { width:15px; height:15px; }
    .ticket-open-wizard .ticket-impact-deadline-value strong { font-size:1.2rem; }
    .ticket-open-wizard .ticket-impact-choice .ticket-impact-recommended { top:4px; right:5px; font-size:.5rem; }
    .ticket-open-steps { margin-bottom:28px; padding-inline:0; }
    .ticket-open-stage { gap:6px; font-size:.65rem; }
    .ticket-open-stage-number { width:30px; height:30px; font-size:.76rem; }
    .ticket-open-stage::after { top:14px; left:calc(50% + 18px); width:calc(100% - 36px); }
    .ticket-open-step-intro { gap:12px; margin-bottom:22px; }
    .ticket-open-step-icon { width:48px; height:48px; border-radius:11px; }
    .ticket-open-step-icon svg { width:25px; height:25px; }
    .ticket-open-wizard .topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ticket-open-wizard .ticket-open-detail-grid { grid-template-columns:1fr; }
    .ticket-open-dynamic-fields { grid-template-columns:1fr; }
}
@media (max-width:560px) {
    .ticket-open-wizard .ticket-impact-heading { align-items:flex-start; gap:7px; margin-bottom:7px; }
    .ticket-open-wizard .ticket-impact-heading-icon { width:28px; height:28px; }
    .ticket-open-wizard .ticket-impact-heading-icon svg { width:16px; height:16px; }
    .ticket-open-wizard .ticket-impact-heading h3 { font-size:.88rem; }
    .ticket-open-wizard .ticket-impact-heading p { margin-top:2px; font-size:.62rem; }
    .ticket-open-wizard .ticket-impact-options { gap:6px; }
    .ticket-open-wizard .ticket-impact-choice-card { grid-template-columns:15px 28px minmax(0,1fr) 83px; gap:6px; min-height:64px; padding:6px 7px; }
    .ticket-open-wizard .ticket-impact-choice-check { width:15px; height:15px; }
    .ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card .ticket-impact-choice-check::after { width:8px; height:8px; }
    .ticket-open-wizard .ticket-impact-choice-icon { width:28px; height:28px; }
    .ticket-open-wizard .ticket-impact-choice-icon svg { width:15px; height:15px; }
    .ticket-open-wizard .ticket-impact-choice-copy { padding-right:0; }
    .ticket-open-wizard .ticket-impact-choice-copy strong { font-size:.76rem; }
    .ticket-open-wizard .ticket-impact-choice-copy small { font-size:.57rem; }
    .ticket-open-wizard .ticket-impact-deadline { grid-column:auto; justify-content:center; min-height:34px; margin:0; padding-left:5px; border-top:0; border-left:1px solid #dce6f2; }
    .ticket-open-wizard .ticket-impact-choice .ticket-impact-deadline-icon { width:22px; height:22px; }
    .ticket-open-wizard .ticket-impact-deadline-icon svg { width:13px; height:13px; }
    .ticket-open-wizard .ticket-impact-deadline-value { flex-direction:column; align-items:flex-start; gap:1px; }
    .ticket-open-wizard .ticket-impact-deadline-value strong { font-size:1rem; }
    .ticket-open-wizard .ticket-impact-deadline-value small { margin:0; font-size:.55rem; }
}
@media (max-width:520px) {
    .ticket-open-heading h1 { font-size:2rem; }
    .ticket-open-stage span:last-child { display:none; }
    .ticket-open-stage { min-height:30px; }
    .ticket-open-wizard .topic-card { min-height:112px; padding:12px 8px; }
    .ticket-open-wizard .topic-card small { font-size:.61rem; }
    .ticket-open-wizard .wizard-summary { grid-template-columns:1fr; }
    .ticket-open-wizard .requester-card { padding-left:18px; }
    .ticket-open-wizard .requester-card::before,
    .ticket-open-wizard .requester-card::after { display:none; }
    .ticket-open-upload-zone { padding-left:20px; }
    .ticket-open-upload-zone::before { display:none; }
    .ticket-open-actions .app-btn { width:100%; }
}

/* O sistema usa somente o tema claro. */
html[data-theme="light"] .sidebar-account-actions {
    grid-template-columns: 1fr !important;
}

/* Menu lateral institucional. Mantém a estrutura e os destinos existentes. */
html[data-theme="light"] .app-sidebar.sidebar-redesign {
    width:336px !important;
    padding:0 !important;
    overflow-x:hidden;
    scrollbar-gutter:auto;
    scrollbar-width:none;
    border:1px solid #c9dced !important;
    border-radius:16px;
    background:#ffffff !important;
    box-shadow:0 18px 42px rgba(24,74,119,.18) !important;
    color:#092c54 !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign::-webkit-scrollbar {
    display:none;
    width:0;
    height:0;
}

/* O menu permanece visualmente estável ao passar o mouse; os links continuam clicáveis. */
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-brand-link:hover,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-brand-link:active {
    background:transparent !important;
    color:#ffffff !important;
    transform:none !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-brand-link:hover strong,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-brand-link:hover small {
    color:inherit !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):active {
    background:transparent !important;
    color:#0c2850 !important;
    transform:none !important;
    box-shadow:none !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover .sidebar-nav-icon,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):active .sidebar-nav-icon {
    background:linear-gradient(145deg,#eef7ff,#dcebfa) !important;
    color:#0873df !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover .sidebar-nav-chevron,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):active .sidebar-nav-chevron {
    color:#7894b2 !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-collapse-btn:hover,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-collapse-btn:active {
    background:rgba(238,247,255,.83) !important;
    color:#1768c7 !important;
    transform:none !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-logout-btn:hover,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-logout-btn:active {
    background:#ffffff !important;
    color:#d92d35 !important;
    transform:none !important;
}

/* O link da marca mantém o cabeçalho intacto mesmo contra regras gerais de hover. */
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:hover,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:focus,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:active {
    background:transparent !important;
    color:#ffffff !important;
    transform:none !important;
}

html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:hover .sidebar-brand-text strong,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:focus .sidebar-brand-text strong,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:active .sidebar-brand-text strong,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:hover .sidebar-brand-text small,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:focus .sidebar-brand-text small,
html[data-theme="light"] #appSidebar.sidebar-redesign a.sidebar-brand-link:active .sidebar-brand-text small {
    color:#ffffff !important;
}

/* Estado selecionado: contraste alto contra regras legadas de links e spans. */
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:hover,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:active {
    background:linear-gradient(135deg,#075bd1 0%,#0b8fe8 100%) !important;
    color:#ffffff !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-label,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:hover .sidebar-nav-label,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:active .sidebar-nav-label {
    color:#ffffff !important;
    font-weight:900 !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-icon,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:hover .sidebar-nav-icon,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:active .sidebar-nav-icon {
    background:rgba(255,255,255,.20) !important;
    color:#ffffff !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-icon svg,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:hover .sidebar-nav-icon svg {
    color:#ffffff !important;
    stroke:currentColor !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-chevron,
html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-nav-link-active:hover .sidebar-nav-chevron {
    color:#ffffff !important;
}

.sidebar-redesign .sidebar-brand {
    position:relative;
    display:flex;
    min-height:192px;
    align-items:flex-start;
    justify-content:space-between;
    overflow:hidden;
    padding:28px 24px 24px;
    background:linear-gradient(136deg,#075dca 0%,#0d7de9 58%,#39a6ff 100%);
}

.sidebar-redesign .sidebar-brand::before,
.sidebar-redesign .sidebar-brand::after {
    position:absolute;
    right:-18%;
    bottom:-38%;
    width:128%;
    height:58%;
    border-radius:52% 48% 0 0;
    background:rgba(255,255,255,.15);
    content:"";
    transform:rotate(-8deg);
}

.sidebar-redesign .sidebar-brand::after {
    right:34%;
    bottom:-50%;
    background:rgba(0,50,142,.24);
    transform:rotate(12deg);
}

.sidebar-redesign .sidebar-brand-link,
html[data-theme="light"] .app-sidebar .sidebar-brand-link {
    position:relative;
    z-index:1;
    display:flex;
    min-width:0;
    align-items:center;
    gap:14px;
    color:#ffffff !important;
    text-decoration:none;
}

.sidebar-redesign .sidebar-brand-logo {
    width:66px;
    height:66px;
    flex:0 0 66px;
    object-fit:contain;
    border-radius:12px;
    box-shadow:0 4px 10px rgba(0,38,99,.18);
}

.sidebar-redesign .sidebar-brand-text {
    display:grid;
    gap:3px;
    min-width:0;
}

.sidebar-redesign .sidebar-brand-text strong,
html[data-theme="light"] .app-sidebar .sidebar-brand-text strong {
    color:#ffffff !important;
    font-size:25px;
    font-weight:900;
    letter-spacing:0;
    line-height:1.05;
}

.sidebar-redesign .sidebar-brand-text small,
html[data-theme="light"] .app-sidebar .sidebar-brand-text small {
    color:#e5f2ff !important;
    font-size:15px;
    font-weight:600;
    line-height:1.25;
}

.sidebar-redesign .sidebar-collapse-btn {
    position:relative;
    z-index:1;
    display:grid;
    width:42px;
    height:42px;
    flex:0 0 42px;
    place-items:center;
    border:1px solid rgba(255,255,255,.28);
    border-radius:50%;
    background:rgba(238,247,255,.83);
    color:#1768c7;
    box-shadow:0 8px 16px rgba(0,54,139,.18);
    transition:transform .18s ease, background .18s ease;
}

.sidebar-redesign .sidebar-collapse-btn:hover {
    background:#ffffff;
    transform:scale(1.05);
}

.sidebar-redesign .sidebar-navigation {
    display:grid;
    gap:7px;
    padding:20px 18px 0;
}

.sidebar-redesign .sidebar-nav-link,
html[data-theme="light"] .app-sidebar .sidebar-nav-link {
    display:flex;
    min-height:55px;
    align-items:center;
    gap:12px;
    padding:7px 10px;
    overflow:hidden;
    border:1px solid transparent;
    border-radius:14px;
    background:transparent !important;
    color:#0c2850 !important;
    font-size:15px;
    font-weight:800 !important;
    line-height:1.2;
    text-decoration:none;
    transform:none !important;
    transition:background .18s ease, color .18s ease, box-shadow .18s ease;
}

.sidebar-redesign .sidebar-nav-link:hover,
html[data-theme="light"] .app-sidebar .sidebar-nav-link:hover {
    background:#edf6ff !important;
    color:#075fca !important;
    transform:none !important;
}

.sidebar-redesign .sidebar-nav-icon {
    display:grid;
    width:39px;
    height:39px;
    flex:0 0 39px;
    place-items:center;
    border-radius:11px;
    background:linear-gradient(145deg,#eef7ff,#dcebfa);
    color:#0873df;
}

.sidebar-redesign .sidebar-nav-icon svg {
    width:21px;
    height:21px;
    stroke-width:2.2;
}

.sidebar-redesign .sidebar-nav-label,
html[data-theme="light"] .app-sidebar .sidebar-nav-label {
    min-width:0;
    flex:1;
    color:inherit !important;
}

.sidebar-redesign .sidebar-nav-chevron {
    display:grid;
    width:24px;
    height:24px;
    flex:0 0 24px;
    place-items:center;
    color:#7894b2;
}

.sidebar-redesign .sidebar-nav-chevron svg {
    width:18px;
    height:18px;
    stroke-width:2.4;
}

.sidebar-redesign .sidebar-nav-link-active,
html[data-theme="light"] .app-sidebar .sidebar-nav-link-active,
html[data-theme="light"] .app-sidebar nav a.sidebar-nav-link-active {
    border-color:rgba(20,120,235,.12) !important;
    background:linear-gradient(135deg,#0963df 0%,#1096ef 100%) !important;
    box-shadow:0 9px 19px rgba(14,103,218,.27) !important;
    color:#ffffff !important;
}

.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-icon {
    background:rgba(255,255,255,.14);
    color:#ffffff;
}

.sidebar-redesign .sidebar-nav-link-active:hover,
html[data-theme="light"] .app-sidebar .sidebar-nav-link-active:hover,
html[data-theme="light"] .app-sidebar nav a.sidebar-nav-link-active:hover {
    border-radius:14px !important;
    background:linear-gradient(135deg,#0963df 0%,#1096ef 100%) !important;
    color:#ffffff !important;
    box-shadow:0 9px 19px rgba(14,103,218,.27) !important;
    transform:none !important;
}

.sidebar-redesign .sidebar-nav-link-active .sidebar-nav-chevron,
html[data-theme="light"] .app-sidebar .sidebar-nav-link-active .sidebar-nav-chevron {
    color:#ffffff !important;
}

.sidebar-redesign .sidebar-admin-group {
    display:grid;
    gap:7px;
    margin-top:9px;
    padding-top:18px;
    border-top:1px solid #d8e6f3;
}

.sidebar-redesign .sidebar-admin-label,
html[data-theme="light"] .app-sidebar .sidebar-admin-label {
    margin:0 0 2px;
    padding:0 10px;
    color:#466789 !important;
    font-size:12px;
    font-weight:900 !important;
    letter-spacing:.06em;
    line-height:1.2;
    text-transform:uppercase;
}

.sidebar-redesign .sidebar-account-card,
html[data-theme="light"] .app-sidebar .sidebar-account-card {
    margin:auto 18px 14px !important;
    padding:16px !important;
    border:1px solid #deebf6 !important;
    border-radius:14px !important;
    background:linear-gradient(145deg,#f8fbff,#edf5fc) !important;
    box-shadow:none !important;
}

.sidebar-redesign .sidebar-account-header {
    gap:12px;
}

.sidebar-redesign .sidebar-user-icon,
html[data-theme="light"] .app-sidebar .sidebar-user-icon {
    width:54px;
    height:54px;
    flex:0 0 54px;
    border:0 !important;
    border-radius:50%;
    background:linear-gradient(135deg,#075fda,#15a8ef) !important;
    box-shadow:0 9px 18px rgba(13,111,225,.24) !important;
}

.sidebar-redesign .sidebar-user-icon span,
html[data-theme="light"] .app-sidebar .sidebar-user-icon span {
    color:#ffffff !important;
    font-size:19px;
    letter-spacing:0;
}

.sidebar-redesign .sidebar-user-name,
html[data-theme="light"] .app-sidebar .sidebar-user-name {
    margin:0;
    color:#0c2850 !important;
    font-size:16px;
    font-weight:900 !important;
}

.sidebar-redesign .sidebar-user-meta,
.sidebar-redesign .sidebar-user-setor,
html[data-theme="light"] .app-sidebar .sidebar-user-meta,
html[data-theme="light"] .app-sidebar .sidebar-user-setor {
    margin:2px 0 0;
    color:#587493 !important;
    font-size:13px;
    font-weight:600;
    line-height:1.25;
}

.sidebar-redesign .sidebar-account-actions,
html[data-theme="light"] .app-sidebar .sidebar-account-actions {
    display:block;
    margin-top:14px !important;
    padding-top:0 !important;
    border:0 !important;
}

.sidebar-redesign .sidebar-logout-btn,
html[data-theme="light"] .app-sidebar .sidebar-logout-btn {
    min-height:43px !important;
    height:43px !important;
    border:1px solid #f29ba1 !important;
    border-radius:14px !important;
    background:#ffffff !important;
    color:#d92d35 !important;
    box-shadow:none !important;
    font-size:14px;
    font-weight:900 !important;
}

html[data-theme="light"] .app-sidebar.sidebar-redesign .sidebar-account-card .sidebar-logout-btn {
    min-height:43px !important;
    height:43px !important;
    max-height:none !important;
}

.sidebar-redesign .sidebar-logout-btn:hover,
html[data-theme="light"] .app-sidebar .sidebar-logout-btn:hover {
    background:#fff3f3 !important;
    color:#bd1e29 !important;
}

.sidebar-redesign .sidebar-logout-btn svg {
    width:19px !important;
    height:19px !important;
}

.sidebar-redesign .institutional-footer,
html[data-theme="light"] .app-sidebar .institutional-footer {
    position:relative;
    display:flex;
    min-height:128px;
    align-items:center;
    gap:12px;
    margin-top:auto;
    padding:18px !important;
    overflow:hidden;
    border:0 !important;
    border-radius:0 0 15px 15px;
    background:linear-gradient(140deg,#0968da,#063b8d) !important;
    box-shadow:none !important;
}

.sidebar-redesign .institutional-footer::before {
    position:absolute;
    right:-18%;
    bottom:-46%;
    width:128%;
    height:80%;
    border-radius:50% 45% 0 0;
    background:rgba(14,143,238,.52);
    content:"";
    transform:rotate(-8deg);
}

.sidebar-redesign .institutional-footer > * {
    position:relative;
    z-index:1;
}

.sidebar-redesign .institutional-footer-logo {
    width:47px;
    height:58px;
    flex:0 0 47px;
    object-fit:contain;
    border-radius:8px;
}

.sidebar-redesign .institutional-footer p,
html[data-theme="light"] .app-sidebar .institutional-footer p {
    margin:0;
    color:#ffffff !important;
    font-size:12px;
    font-weight:800;
    line-height:1.28;
}

.sidebar-redesign .institutional-footer p + p,
html[data-theme="light"] .app-sidebar .institutional-footer p + p {
    margin-top:4px;
    color:#d9ecff !important;
    font-size:11px;
    font-weight:600;
}

@media (min-width:1025px) {
    html[data-theme="light"] .app-sidebar.sidebar-redesign {
        top:10px;
        bottom:10px;
        left:10px;
        height:calc(100vh - 20px);
    }
}

@media (max-width:1024px) {
    html[data-theme="light"] .app-sidebar.sidebar-redesign {
        left:0 !important;
        width:min(336px, calc(100vw - 22px)) !important;
        border-radius:0 16px 16px 0;
    }

    /* Evita que a margem e a borda deixem uma faixa visível quando o menu fecha. */
    html[data-theme="light"] .app-sidebar.sidebar-redesign:not(.is-open) {
        visibility:hidden;
    }

    html[data-theme="light"] .app-sidebar.sidebar-redesign.is-open {
        visibility:visible;
    }
}

@media (max-width:420px) {
    .sidebar-redesign .sidebar-brand {
        min-height:168px;
        padding:22px 18px;
    }

    .sidebar-redesign .sidebar-brand-logo {
        width:54px;
        height:54px;
        flex-basis:54px;
    }

    .sidebar-redesign .sidebar-brand-text strong {
        font-size:22px;
    }

    .sidebar-redesign .sidebar-navigation {
        padding-right:14px;
        padding-left:14px;
    }

    .sidebar-redesign .sidebar-account-card {
        margin-right:14px !important;
        margin-left:14px !important;
    }
}

/* Estado único de abertura: o menu fechado sai inteiro da viewport e volta pelo botão existente. */
html[data-theme="light"] #appSidebar.sidebar-redesign {
    visibility:visible !important;
    transform:translateX(calc(-100% - 16px)) !important;
}

html[data-theme="light"] #appSidebar.sidebar-redesign.is-open {
    visibility:visible !important;
    transform:translateX(0) !important;
}

body.login-theme,
body.auth-dark-theme,
body.auth-page {
    color-scheme: light !important;
    background: #eef5fb !important;
    color: #102e55 !important;
}

body.login-theme > div,
body.auth-dark-theme > main,
body.auth-page .auth-bg {
    background: linear-gradient(135deg, #f8fbff 0%, #eaf3fb 52%, #ffffff 100%) !important;
}

body.login-theme .rounded-3xl,
body.auth-dark-theme .rounded-3xl,
body.auth-page .auth-card {
    border-color: #c8dced !important;
    background: #ffffff !important;
    color: #102e55 !important;
    box-shadow: 0 18px 42px rgba(39, 87, 126, .12) !important;
}

body.login-theme .rounded-3xl h2,
body.auth-dark-theme .rounded-3xl h2,
body.auth-page .auth-card h1,
body.auth-page .auth-card h2,
body.login-theme .text-white,
body.auth-dark-theme .text-white,
body.auth-page .text-white {
    color: #102e55 !important;
}

body.login-theme .rounded-3xl p,
body.auth-dark-theme .rounded-3xl p,
body.auth-page .auth-card p,
body.login-theme .text-slate-400,
body.auth-dark-theme .text-slate-400,
body.auth-page .text-slate-400,
body.login-theme .text-slate-500,
body.auth-dark-theme .text-slate-500,
body.auth-page .text-slate-500 {
    color: #58718a !important;
}

body.login-theme label,
body.auth-dark-theme label,
body.auth-page label,
body.login-theme .text-slate-300,
body.auth-dark-theme .text-slate-300,
body.auth-page .text-slate-300 {
    color: #294965 !important;
}

body.login-theme input:not([type="checkbox"]),
body.auth-dark-theme input:not([type="checkbox"]),
body.auth-page input:not([type="checkbox"]) {
    background: #ffffff !important;
    border-color: #a9c6dd !important;
    color: #102e55 !important;
    -webkit-text-fill-color: #102e55 !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .03) !important;
}

body.login-theme input:not([type="checkbox"]):focus,
body.auth-dark-theme input:not([type="checkbox"]):focus,
body.auth-page input:not([type="checkbox"]):focus {
    border-color: #1670cf !important;
    box-shadow: 0 0 0 4px rgba(22, 112, 207, .15) !important;
}

body.login-theme input::placeholder,
body.auth-dark-theme input::placeholder,
body.auth-page input::placeholder {
    color: #6d879e !important;
    -webkit-text-fill-color: #6d879e !important;
}

body.auth-page .auth-bg {
    opacity: 1 !important;
}

/* Prioridade final do tema claro sobre regras antigas de autenticacao. */
html[data-theme="light"] body.login-theme,
html[data-theme="light"] body.auth-dark-theme,
html[data-theme="light"] body.auth-page {
    color-scheme: light !important;
    background: #eef5fb !important;
    color: #102e55 !important;
}

html[data-theme="light"] body.login-theme > div,
html[data-theme="light"] body.auth-dark-theme > main,
html[data-theme="light"] body.auth-page .auth-bg {
    background: linear-gradient(135deg, #f8fbff 0%, #eaf3fb 52%, #ffffff 100%) !important;
}

html[data-theme="light"] body.login-theme .rounded-3xl,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl,
html[data-theme="light"] body.auth-page .auth-card {
    border-color: #c8dced !important;
    background: #ffffff !important;
    color: #102e55 !important;
    box-shadow: 0 18px 42px rgba(39, 87, 126, .12) !important;
}

html[data-theme="light"] body.login-theme .rounded-3xl h2,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl h2,
html[data-theme="light"] body.auth-page .auth-card h1,
html[data-theme="light"] body.auth-page .auth-card h2,
html[data-theme="light"] body.login-theme .brand-title,
html[data-theme="light"] body.auth-dark-theme .brand-title,
html[data-theme="light"] body.login-theme .rounded-3xl h2.text-white,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl h2.text-white,
html[data-theme="light"] body.auth-page .auth-card h1.text-white,
html[data-theme="light"] body.auth-page .auth-card h2.text-white {
    color: #102e55 !important;
}

html[data-theme="light"] body.login-theme .rounded-3xl p,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl p,
html[data-theme="light"] body.auth-page .auth-card p {
    color: #58718a !important;
}

html[data-theme="light"] body.login-theme label,
html[data-theme="light"] body.auth-dark-theme label,
html[data-theme="light"] body.auth-page label,
html[data-theme="light"] body.login-theme .rounded-3xl label,
html[data-theme="light"] body.auth-dark-theme .rounded-3xl label {
    color: #294965 !important;
}

html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]),
html[data-theme="light"] body.auth-dark-theme input:not([type="checkbox"]):not([type="radio"]),
html[data-theme="light"] body.auth-page input:not([type="checkbox"]):not([type="radio"]) {
    background: #ffffff !important;
    border-color: #a9c6dd !important;
    color: #102e55 !important;
    -webkit-text-fill-color: #102e55 !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .03) !important;
}

html[data-theme="light"] body.login-theme input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme="light"] body.auth-dark-theme input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme="light"] body.auth-page input:not([type="checkbox"]):not([type="radio"]):focus {
    border-color: #1670cf !important;
    box-shadow: 0 0 0 4px rgba(22, 112, 207, .15) !important;
}

/* Contraste da marca no portal público para visitantes sem autenticação. */
html[data-theme="light"] .public-topbar .public-brand-mark {
    border-color:#8bc5f2 !important;
    background:linear-gradient(145deg,#0867d3,#1c9ced) !important;
    box-shadow:0 7px 16px rgba(8,103,211,.18) !important;
}
html[data-theme="light"] .public-topbar .public-brand-mark img {
    opacity:1 !important;
    filter:none !important;
}

/* A regra legada de cabeçalhos da área principal não deve apagar o herói da consulta pública. */
html[data-theme="light"] .public-tracking-page .ticket-tracking-hero {
    background:linear-gradient(115deg,#075cc9 0%,#0875de 51%,#29a3fa 100%) !important;
    color:#fff !important;
}
html[data-theme="light"] .public-tracking-page .ticket-tracking-hero-content p,
html[data-theme="light"] .public-tracking-page .ticket-tracking-hero-content h2,
html[data-theme="light"] .public-tracking-page .ticket-tracking-hero-content span {
    color:#fff !important;
}

/* Detalhes públicos do ticket. */
html[data-theme="light"] .public-ticket-details-redesign {
    width:100%;
    max-width:1180px;
    padding:22px 0 42px;
}
.public-ticket-breadcrumb {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}
.public-ticket-breadcrumb nav { display:flex; min-width:0; align-items:center; gap:10px; color:#46627f; font-size:14px; font-weight:650; }
.public-ticket-breadcrumb a { color:#075fca; text-decoration:none; }
.public-ticket-breadcrumb nav > a:first-child { display:grid; width:26px; height:26px; place-items:center; }
.public-ticket-breadcrumb svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.public-ticket-breadcrumb a:first-child svg { width:20px; height:20px; color:#0871dd; }
.public-ticket-breadcrumb .public-breadcrumb-chevron { width:16px; height:16px; color:#7c95ae; }
.public-ticket-protocol-badge { flex:0 0 auto; padding:7px 13px; border:1px solid #bee0fb; border-radius:11px; background:#f0f8ff; color:#0864c5; font-size:14px; font-weight:900; line-height:1; }
.public-ticket-details-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    grid-template-areas:"overview summary" "chat summary" "back .";
    gap:24px 22px;
    align-items:start;
}
.public-ticket-overview { grid-area:overview; }
.public-ticket-summary-card { grid-area:summary; }
.public-ticket-chat-card { grid-area:chat; }
.public-ticket-back { grid-area:back; }
html[data-theme="light"] .public-ticket-overview,
html[data-theme="light"] .public-ticket-summary-card,
html[data-theme="light"] .public-ticket-chat-card {
    border:1px solid #c9dff1 !important;
    border-radius:17px !important;
    background:#fff !important;
    box-shadow:0 14px 32px rgba(30,78,117,.08) !important;
}
.public-ticket-overview { padding:26px; }
.public-ticket-overview-top { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.public-ticket-overview-badges { display:flex; flex-wrap:wrap; gap:10px; }
.public-status-badge,
.public-category-badge { display:inline-flex; min-height:38px; align-items:center; gap:9px; padding:8px 13px; border:1px solid #c7ddf1; border-radius:11px; background:#fff; color:#102540; font-size:14px; font-weight:850; line-height:1; }
.public-status-badge .ticket-situation-dot { width:15px; height:15px; box-shadow:0 0 0 4px rgba(44,203,78,.12); }
.public-category-badge { border-color:#b9dcfa; background:#eaf6ff; color:#075ebd; }
.public-ticket-opened-at { display:inline-flex; align-items:center; gap:9px; margin:0; color:#4b6682; font-size:14px; font-weight:650; white-space:nowrap; }
.public-ticket-opened-at svg { width:20px; height:20px; flex:0 0 auto; fill:none; stroke:#0a6fd7; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.public-ticket-text-block { margin-top:27px; }
.public-ticket-text-block h1,
.public-ticket-text-block h2 { margin:0; color:#0b1e38 !important; font-size:21px; font-weight:900; line-height:1.25; }
.public-ticket-text-block p { margin:11px 0 0; color:#263f5c; font-size:16px; font-weight:500; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.public-ticket-description { margin-top:23px; padding-top:27px; border-top:1px solid #d7e7f4; }
.public-ticket-location-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:29px; }
.public-ticket-location-card { display:flex; min-width:0; min-height:98px; align-items:center; gap:17px; padding:17px 19px; border:1px solid #bdd8ee; border-radius:14px; background:#f9fcff; }
.public-ticket-location-icon { display:grid; width:49px; height:49px; flex:0 0 auto; place-items:center; border-radius:12px; background:#e2f1ff; color:#076ad6; }
.public-ticket-location-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.85; }
.public-ticket-location-card div { min-width:0; }
.public-ticket-location-card small,
.public-ticket-attendance-time small { display:block; margin-bottom:5px; color:#58718e; font-size:13px; font-weight:800; }
.public-ticket-location-card strong { display:block; overflow-wrap:anywhere; color:#0a1d37; font-size:16px; font-weight:900; line-height:1.25; text-transform:uppercase; }
.public-ticket-summary-card { align-self:start; overflow:hidden; }
.public-ticket-summary-header { display:flex; gap:16px; align-items:center; padding:24px 22px; background:linear-gradient(124deg,#0862ce 0%,#087ae7 58%,#35a6f4 100%) !important; color:#fff !important; }
.public-ticket-summary-title-icon { display:grid; width:46px; height:46px; flex:0 0 auto; place-items:center; border-radius:11px; background:rgba(255,255,255,.16); }
.public-ticket-summary-title-icon svg { width:27px; height:27px; fill:none; stroke:#fff; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.public-ticket-summary-header h2 { margin:0; color:#fff !important; font-size:20px; font-weight:900; line-height:1.2; }
.public-ticket-summary-header p { margin:4px 0 0; color:rgba(255,255,255,.9) !important; font-size:13px; line-height:1.35; }
.public-ticket-summary-list { margin:0; padding:8px 22px 0; }
.public-ticket-summary-list > div { padding:16px 0; border-bottom:1px solid #dce9f4; }
.public-ticket-summary-list dt { display:flex; align-items:center; gap:12px; color:#59718e; font-size:13px; font-weight:800; }
.public-ticket-summary-list dd { margin:5px 0 0 40px; color:#0b1e38; font-size:16px; font-weight:900; line-height:1.3; overflow-wrap:anywhere; }
.public-ticket-summary-icon { display:grid; width:28px; height:28px; flex:0 0 auto; place-items:center; color:#0870d8; }
.public-ticket-summary-icon svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
.public-detail-status-value { display:inline-flex; width:fit-content; align-items:center; gap:8px; margin-top:6px !important; padding:5px 9px; border-radius:999px; background:#eaf8ef; color:#176d3a !important; font-size:14px !important; }
.public-detail-status-value .ticket-situation-dot { width:12px; height:12px; }
.public-ticket-attendance-time { display:flex; gap:14px; align-items:center; margin:18px 22px 22px; padding:16px; border:1px solid #d4e6f4; border-radius:13px; background:#eff8ff; }
.public-ticket-attendance-time .public-ticket-summary-icon { width:36px; height:36px; }
.public-ticket-attendance-time .public-ticket-summary-icon svg { width:31px; height:31px; }
.public-ticket-attendance-time strong { display:block; color:#0b2240; font-size:16px; font-weight:900; }
.public-ticket-chat-card { overflow:hidden; }
.public-ticket-chat-header { display:flex; align-items:center; gap:15px; padding:24px 25px; border-bottom:1px solid #d9e8f4; background:#fff; }
.public-ticket-chat-title-icon { display:grid; width:58px; height:58px; flex:0 0 auto; place-items:center; border:1px solid #cde4fb; border-radius:14px; background:#f1f8ff; color:#0873da; }
.public-ticket-chat-title-icon svg { width:31px; height:31px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
.public-ticket-chat-heading { min-width:0; }
.public-ticket-chat-heading h2 { margin:0; color:#0b1e38 !important; font-size:22px; font-weight:900; line-height:1.2; }
.public-ticket-chat-heading p { margin:5px 0 0; color:#55718e !important; font-size:14px; line-height:1.35; }
.public-ticket-message-count { display:inline-flex; flex:0 0 auto; align-items:center; gap:8px; margin-left:auto; padding:10px 13px; border:1px solid #c2e0fc; border-radius:12px; background:#f2f9ff; color:#0767c9; font-size:13px; font-weight:850; white-space:nowrap; }
.public-ticket-message-count svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
html[data-theme="light"] .public-ticket-chat-body { max-height:410px; min-height:0; padding:25px; overflow-y:auto; background:#fff !important; }
.public-chat-empty-state { display:flex; min-height:245px; flex-direction:column; align-items:center; justify-content:center; gap:7px; padding:28px; border:0; border-radius:13px; background:#f4faff; color:#163452; text-align:center; }
.public-chat-empty-icon { display:grid; width:74px; height:68px; place-items:center; color:#0b79e4; }
.public-chat-empty-icon svg { width:63px; height:63px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.55; }
.public-chat-empty-state strong { color:#183654; font-size:16px; font-weight:900; }
.public-chat-empty-state p { margin:0; color:#64809d; font-size:14px; }
.public-ticket-chat-alert { margin:0 25px 20px; }
html[data-theme="light"] .public-ticket-compose { padding:22px 25px 24px; border-top:1px dashed #b8d9f5; background:#fff !important; }
.public-ticket-compose-field > span { display:block; margin-bottom:10px; color:#12375c; font-size:16px; font-weight:900; }
.public-ticket-textarea-wrap { position:relative; display:flex; align-items:stretch; overflow:hidden; border:1px solid #a9cce9; border-radius:12px; background:#fff; }
.public-ticket-textarea-wrap > svg { width:54px; flex:0 0 54px; align-self:stretch; padding:15px; color:#315b87; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }
html[data-theme="light"] .public-ticket-textarea-wrap .app-input { min-height:108px; margin:0; padding:16px 16px 16px 5px; border:0 !important; border-left:1px solid #e3eef8 !important; border-radius:0; background:#fff !important; color:#183653 !important; box-shadow:none !important; font-size:15px; line-height:1.5; }
html[data-theme="light"] .public-ticket-textarea-wrap:focus-within { border-color:#0870d8; box-shadow:0 0 0 4px rgba(8,112,216,.13); }
.public-ticket-compose-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:16px; }
.public-ticket-compose-footer p { display:flex; max-width:60%; align-items:flex-start; gap:8px; margin:0; color:#5b7692; font-size:13px; line-height:1.4; }
.public-ticket-compose-footer p svg { width:20px; height:20px; flex:0 0 auto; color:#0875dd; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.public-ticket-compose-footer .app-btn { display:inline-flex; min-height:52px; align-items:center; gap:10px; padding:12px 19px; border:0; border-radius:11px; font-size:15px; font-weight:850; box-shadow:0 10px 20px rgba(4,96,200,.19); }
.public-ticket-compose-footer .app-btn svg,
.public-ticket-back svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.public-ticket-chat-closed { padding:21px 25px; border-top:1px solid #d9e8f4; background:#f8fbfe; color:#5d7691; font-size:14px; text-align:center; }
.public-ticket-back { display:inline-flex; width:fit-content; min-height:51px; align-items:center; gap:10px; padding:11px 19px; border:1px solid #aacdeb; border-radius:11px; background:#f7fbff; color:#0b61bd; font-size:15px; font-weight:850; box-shadow:0 7px 15px rgba(30,86,132,.08); }
.public-ticket-back:hover { border-color:#76b3e7; background:#eaf5ff; color:#064f9e; }

html[data-theme="light"] .app-main .public-ticket-summary-header h2 {
    color:#fff !important;
}
html[data-theme="light"] .app-main .public-ticket-summary-header p {
    color:rgba(255,255,255,.9) !important;
}

@media (max-width:1000px) {
    .public-ticket-details-grid { grid-template-columns:minmax(0,1fr) 320px; }
}
@media (max-width:840px) {
    .public-ticket-details-grid { grid-template-columns:1fr; grid-template-areas:"overview" "summary" "chat" "back"; gap:18px; }
}
@media (max-width:560px) {
    html[data-theme="light"] .public-ticket-details-redesign { padding:15px 0 28px; }
    .public-ticket-breadcrumb { align-items:flex-start; margin-bottom:14px; }
    .public-ticket-breadcrumb nav { gap:7px; font-size:12px; }
    .public-ticket-breadcrumb nav > a:first-child { width:21px; height:21px; }
    .public-ticket-breadcrumb a:first-child svg { width:18px; height:18px; }
    .public-ticket-breadcrumb .public-breadcrumb-chevron { width:13px; height:13px; }
    .public-ticket-protocol-badge { padding:7px 9px; font-size:12px; }
    .public-ticket-overview { padding:20px; }
    .public-ticket-overview-top { align-items:flex-start; flex-direction:column; }
    .public-ticket-opened-at { font-size:13px; white-space:normal; }
    .public-ticket-text-block { margin-top:22px; }
    .public-ticket-text-block h1,
    .public-ticket-text-block h2 { font-size:19px; }
    .public-ticket-text-block p { font-size:15px; }
    .public-ticket-description { margin-top:19px; padding-top:22px; }
    .public-ticket-location-grid { grid-template-columns:1fr; gap:12px; margin-top:22px; }
    .public-ticket-location-card { min-height:82px; padding:14px; }
    .public-ticket-location-icon { width:43px; height:43px; }
    .public-ticket-location-icon svg { width:25px; height:25px; }
    .public-ticket-summary-header { padding:20px; }
    .public-ticket-summary-list { padding-inline:20px; }
    .public-ticket-attendance-time { margin:16px 20px 20px; }
    .public-ticket-chat-header { flex-wrap:wrap; gap:12px; padding:20px; }
    .public-ticket-chat-title-icon { width:50px; height:50px; }
    .public-ticket-chat-title-icon svg { width:27px; height:27px; }
    .public-ticket-chat-heading h2 { font-size:20px; }
    .public-ticket-message-count { width:100%; justify-content:center; margin-left:0; }
    html[data-theme="light"] .public-ticket-chat-body { padding:16px; }
    .public-chat-empty-state { min-height:215px; padding:20px 12px; }
    html[data-theme="light"] .public-ticket-compose { padding:19px 16px; }
    .public-ticket-compose-footer { align-items:stretch; flex-direction:column; }
    .public-ticket-compose-footer p { max-width:none; }
    .public-ticket-compose-footer .app-btn { width:100%; justify-content:center; }
    .public-ticket-back { width:100%; justify-content:center; }
}

/* Autofill do navegador: preserva as contas sugeridas sem escurecer os campos. */
html[data-theme="light"] body.login-theme input#email,
html[data-theme="light"] body.login-theme input#senha,
html[data-theme="light"] body.login-theme input#email:hover,
html[data-theme="light"] body.login-theme input#senha:hover {
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    box-shadow:0 1px 0 rgba(15,23,42,.03) !important;
}
html[data-theme="light"] body.login-theme input#email:focus,
html[data-theme="light"] body.login-theme input#senha:focus {
    background:#ffffff !important;
    background-color:#ffffff !important;
    border-color:#1670cf !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    box-shadow:0 0 0 4px rgba(22,112,207,.12) !important;
}
html[data-theme="light"] body.login-theme input#email:-webkit-autofill,
html[data-theme="light"] body.login-theme input#email:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme input#email:-webkit-autofill:focus,
html[data-theme="light"] body.login-theme input#email:-webkit-autofill:active,
html[data-theme="light"] body.login-theme input#senha:-webkit-autofill,
html[data-theme="light"] body.login-theme input#senha:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme input#senha:-webkit-autofill:focus,
html[data-theme="light"] body.login-theme input#senha:-webkit-autofill:active {
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    -webkit-box-shadow:0 0 0 1000px #ffffff inset !important;
    box-shadow:0 0 0 1000px #ffffff inset !important;
    caret-color:#1670cf !important;
}
html[data-theme="light"] body.login-theme input#email:autofill,
html[data-theme="light"] body.login-theme input#senha:autofill {
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
}

/* Campos do cadastro: o contorno pertence ao .login-control, nunca ao input interno. */
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > select {
    box-sizing:border-box;
    flex:1 1 auto;
    width:100%;
    min-width:0;
    height:66px;
    margin:0;
    padding:0 18px;
    border:0 !important;
    border-radius:inherit;
    outline:0;
    appearance:none;
    background:transparent !important;
    background-color:transparent !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    caret-color:#0873d8;
    box-shadow:none !important;
    font:inherit;
    font-size:18px;
    font-weight:600;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input::placeholder {
    color:#6d879e !important;
    -webkit-text-fill-color:#6d879e !important;
    opacity:1;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input:focus,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > select:focus {
    border:0 !important;
    outline:0;
    box-shadow:none !important;
}

/* Redefinição de senha: acompanha o formulário de login e mantém o CTA legível. */
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha:focus,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha:focus {
    height:66px;
    padding:0 16px 0 0;
    border-radius:0;
    background:#fff !important;
    background-color:#fff !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    box-shadow:none !important;
    color-scheme:light;
}
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha:-webkit-autofill,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha:-webkit-autofill:focus,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha:-webkit-autofill,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha:-webkit-autofill:focus {
    -webkit-text-fill-color:#102e55 !important;
    -webkit-box-shadow:0 0 0 1000px #fff inset !important;
    box-shadow:0 0 0 1000px #fff inset !important;
    caret-color:#0873d8;
}
html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-submit-link {
    color:#fff !important;
    text-decoration:none !important;
}
@media (max-width:640px) {
    html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#senha,
    html[data-theme="light"] body.login-theme.login-redesign-theme.login-reset-page .login-control > input#confirmar_senha {
        height:57px;
        font-size:16px;
    }
}

/* Compact impact choices in the ticket opening flow. */
.ticket-open-wizard .ticket-impact-field { margin-top:5px; }
.ticket-open-wizard .ticket-impact-heading { gap:7px; margin-bottom:6px; }
.ticket-open-wizard .ticket-impact-heading-icon { width:26px; height:26px; }
.ticket-open-wizard .ticket-impact-heading-icon svg { width:15px; height:15px; }
.ticket-open-wizard .ticket-impact-heading h3 { font-size:.92rem; }
.ticket-open-wizard .ticket-impact-heading p { margin-top:2px; font-size:.65rem; line-height:1.2; }
.ticket-open-wizard .ticket-impact-options { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 8px; }
.ticket-open-wizard .ticket-impact-choice-card { grid-template-columns:15px 28px minmax(0,1fr); gap:8px; min-height:50px; padding:5px 9px; border-width:1px; border-radius:9px; box-shadow:none; }
.ticket-open-wizard .ticket-impact-choice:hover .ticket-impact-choice-card { transform:none; box-shadow:none; }
.ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card { background:#f3f9ff; box-shadow:0 2px 8px rgba(18,105,194,.08); }
.ticket-open-wizard .ticket-impact-choice-icon { width:28px; height:28px; }
.ticket-open-wizard .ticket-impact-choice-icon svg { width:16px; height:16px; }
.ticket-open-wizard .ticket-impact-choice-copy { flex-direction:row; align-items:baseline; flex-wrap:wrap; gap:2px 7px; padding:0; }
.ticket-open-wizard .ticket-impact-choice-copy strong { font-size:.8rem; }
.ticket-open-wizard .ticket-impact-choice-copy small { font-size:.62rem; line-height:1.2; }
@media (max-width:760px) {
    .ticket-open-wizard .ticket-impact-options { grid-template-columns:minmax(0,1fr); gap:5px; }
    .ticket-open-wizard .ticket-impact-choice-card { min-height:46px; }
}
@media (max-width:560px) {
    .ticket-open-wizard .ticket-impact-heading { gap:6px; margin-bottom:5px; }
    .ticket-open-wizard .ticket-impact-heading-icon { width:24px; height:24px; }
    .ticket-open-wizard .ticket-impact-heading-icon svg { width:14px; height:14px; }
    .ticket-open-wizard .ticket-impact-heading h3 { font-size:.84rem; }
    .ticket-open-wizard .ticket-impact-heading p { margin-top:1px; font-size:.6rem; }
    .ticket-open-wizard .ticket-impact-choice-card { grid-template-columns:14px 26px minmax(0,1fr); gap:7px; min-height:42px; padding:4px 7px; }
    .ticket-open-wizard .ticket-impact-choice-check { width:14px; height:14px; }
    .ticket-open-wizard .ticket-impact-radio:checked + .ticket-impact-choice-card .ticket-impact-choice-check::after { width:7px; height:7px; }
    .ticket-open-wizard .ticket-impact-choice-icon { width:26px; height:26px; }
    .ticket-open-wizard .ticket-impact-choice-icon svg { width:15px; height:15px; }
    .ticket-open-wizard .ticket-impact-choice-copy { gap:2px 6px; }
    .ticket-open-wizard .ticket-impact-choice-copy strong { font-size:.74rem; }
    .ticket-open-wizard .ticket-impact-choice-copy small { font-size:.56rem; }
}

/* Keep the non-impact fields consistent and easy to scan in step three. */
.ticket-open-wizard .ticket-open-dynamic-fields { gap:12px; margin-top:14px; }
.ticket-open-wizard .ticket-open-dynamic-field { display:block; min-width:0; }
.ticket-open-wizard .ticket-open-dynamic-field > span:first-child { color:#2368af; font-size:.7rem; font-weight:800; line-height:1.2; letter-spacing:.025em; }
.ticket-open-wizard .ticket-open-dynamic-field-wide { grid-column:1 / -1; }
.ticket-open-wizard .ticket-open-dynamic-field .ticket-open-control { width:100%; margin-top:5px; border-color:#b8d1e7; }
.ticket-open-wizard .ticket-open-dynamic-field .ticket-open-control:hover { border-color:#6fa8dc; }
.ticket-open-wizard .ticket-open-dynamic-field .ticket-open-control .wizard-input { min-width:0; min-height:52px; margin:0; padding:12px 14px; border:0 !important; border-radius:8px; background:transparent !important; box-shadow:none !important; }
.ticket-open-wizard .ticket-open-dynamic-field .ticket-open-control textarea { min-height:112px; resize:vertical; line-height:1.5; }
html[data-theme="dark"] .ticket-open-wizard .ticket-open-dynamic-field > span:first-child { color:#9ecbfa; }

/* Mantém o cartão original do login e posiciona o aviso fora dele. */
.login-redesign-theme .login-notice {
    position:absolute;
    z-index:2;
    top:50%;
    right:calc(100% + 36px);
    display:flex;
    width:260px;
    align-items:flex-start;
    gap:12px;
    margin:0;
    padding:17px 16px;
    border:1px solid rgba(195,229,255,.96);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(239,248,255,.97));
    box-shadow:0 16px 30px rgba(0,40,133,.20),inset 0 1px 0 #fff;
    color:#173b67;
    transform:translateY(-50%);
}
.login-redesign-theme .login-notice::after {
    position:absolute;
    top:calc(50% - 8px);
    right:-9px;
    width:16px;
    height:16px;
    border-top:1px solid #c3e5ff;
    border-right:1px solid #c3e5ff;
    background:#f5faff;
    content:"";
    transform:rotate(45deg);
}
.login-redesign-theme .login-notice-icon {
    display:grid;
    width:36px;
    height:36px;
    flex:0 0 36px;
    place-items:center;
    border-radius:11px;
    background:#e3f1ff;
    color:#0872ce;
}
.login-redesign-theme .login-notice-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.login-redesign-theme .login-notice-copy { min-width:0; }
.login-redesign-theme .login-notice-label { display:block; margin:0 0 5px; color:#0872ce; font-size:10px; font-weight:900; letter-spacing:.12em; line-height:1.2; text-transform:uppercase; }
.login-redesign-theme .login-notice h2 { margin:0; color:#17365c; font-size:16px; font-weight:850; line-height:1.25; }
.login-redesign-theme .login-notice p { margin:8px 0 0; color:#526b89; font-size:13px; line-height:1.5; }
.login-redesign-theme .login-notice a { display:inline-flex; align-items:center; gap:7px; margin-top:13px; color:#086bd0; font-size:12px; font-weight:850; text-decoration:none; }
.login-redesign-theme .login-notice a:hover { color:#034fa7; text-decoration:underline; }
.login-redesign-theme .login-notice a:focus-visible { border-radius:4px; outline:3px solid rgba(8,115,216,.3); outline-offset:3px; }
@media (max-width:1040px) {
    .login-redesign-theme .login-notice {
        position:relative;
        top:auto;
        right:auto;
        width:100%;
        margin:0 auto 18px;
        transform:none;
    }
    .login-redesign-theme .login-notice::after { display:none; }
}
@media (max-width:640px) {
    .login-redesign-theme .login-notice { gap:10px; margin-bottom:15px; padding:13px 14px; border-radius:15px; }
    .login-redesign-theme .login-notice-icon { width:32px; height:32px; flex-basis:32px; border-radius:10px; }
    .login-redesign-theme .login-notice-icon svg { width:18px; height:18px; }
    .login-redesign-theme .login-notice h2 { font-size:14px; }
    .login-redesign-theme .login-notice p { margin-top:5px; font-size:12px; }
    .login-redesign-theme .login-notice a { margin-top:9px; }
}

/* Tickets-only fullscreen keeps filters and page chrome outside the fullscreen surface. */
.ticket-table-fullscreen { min-width:0; }
.ticket-table-fullscreen-toolbar {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    margin:0 0 10px;
}
.ticket-table-fullscreen-toolbar h2 {
    margin:0 auto 0 0;
    color:#173b67;
    font-size:16px;
    font-weight:800;
}
.ticket-fullscreen-toggle {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:40px;
    white-space:nowrap;
}
.ticket-fullscreen-toggle svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ticket-fullscreen-toggle svg[hidden] { display:none; }
.ticket-table-fullscreen:fullscreen,
.ticket-table-fullscreen:-webkit-full-screen {
    box-sizing:border-box;
    width:100vw;
    height:100vh;
    max-width:none;
    margin:0;
    padding:16px 20px 20px;
    overflow:auto;
    background:#edf5fb;
    color:#12365d;
}
.ticket-table-fullscreen:fullscreen .ticket-table-fullscreen-toolbar,
.ticket-table-fullscreen:-webkit-full-screen .ticket-table-fullscreen-toolbar { margin-bottom:12px; }
.ticket-table-fullscreen:fullscreen .table-shell,
.ticket-table-fullscreen:-webkit-full-screen .table-shell {
    max-height:calc(100vh - 100px);
    overflow:auto;
}
.ticket-table-fullscreen.is-ticket-fullscreen-fallback {
    position:fixed;
    z-index:10000;
    inset:0;
    box-sizing:border-box;
    padding:16px 20px 20px;
    overflow:auto;
    background:#edf5fb;
    color:#12365d;
}
.ticket-table-fullscreen.is-ticket-fullscreen-fallback .table-shell { max-height:calc(100vh - 100px); overflow:auto; }
@media (max-width:640px) {
    .ticket-table-fullscreen-toolbar h2 { font-size:14px; }
    .ticket-fullscreen-toggle { min-height:38px; padding:8px 10px; font-size:12px; }
    .ticket-table-fullscreen:fullscreen,
    .ticket-table-fullscreen:-webkit-full-screen,
    .ticket-table-fullscreen.is-ticket-fullscreen-fallback { padding:10px; }
    .ticket-table-fullscreen:fullscreen .table-shell,
    .ticket-table-fullscreen:-webkit-full-screen .table-shell,
    .ticket-table-fullscreen.is-ticket-fullscreen-fallback .table-shell { max-height:calc(100vh - 82px); }
}

.ticket-detail-hero-actions { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.ticket-detail-print-button {
    display:inline-flex;
    min-height:50px;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 15px;
    border:1px solid #bdd5eb;
    border-radius:10px;
    background:#fff;
    color:#155e9d;
    font:inherit;
    font-size:13px;
    font-weight:800;
    cursor:pointer;
}
.ticket-detail-print-button:hover { background:#f0f7fd; border-color:#8cbbe5; }
.ticket-detail-print-button svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:720px) {
    .ticket-detail-hero-actions { align-self:flex-start; }
    .ticket-detail-print-button { min-height:44px; }
}

.ticket-print-sheet { display:none; }
.ticket-print-header,
.ticket-print-brand,
.ticket-print-document-label,
.ticket-print-facts,
.ticket-print-grid { display:flex; }

@page { size:A4 portrait; margin:13mm; }
@media print {
    html, body, body.app-shell, .app-content, .app-main {
        width:auto !important;
        min-height:0 !important;
        margin:0 !important;
        padding:0 !important;
        overflow:visible !important;
        background:#fff !important;
        color:#172b45 !important;
        box-shadow:none !important;
    }
    .app-topbar, .app-sidebar, .mobile-overlay, .app-footer,
    [data-print-hide], .app-alert { display:none !important; }
    .app-content { display:block !important; width:auto !important; margin:0 !important; }
    .ticket-detail-page { width:100% !important; max-width:none !important; margin:0 !important; color:#172b45 !important; }
    .ticket-detail-page > :not(.ticket-print-sheet) { display:none !important; }
    .ticket-detail-page > .ticket-print-sheet {
        display:block !important;
        width:100% !important;
        margin:0 !important;
        color:#142d4b !important;
        font-family:Arial, Helvetica, sans-serif !important;
        font-size:10pt !important;
        line-height:1.4 !important;
        -webkit-print-color-adjust:exact;
        print-color-adjust:exact;
    }
    .ticket-print-header {
        align-items:center;
        justify-content:space-between;
        gap:18px;
        padding:0 0 11px;
        border-bottom:2px solid #1474cf;
    }
    .ticket-print-brand { align-items:center; gap:10px; }
    .ticket-print-brand-mark {
        display:grid;
        width:37px;
        height:37px;
        place-items:center;
        border-radius:10px;
        background:#eaf4ff;
        color:#086ac4;
        font-size:21px;
        font-weight:900;
    }
    .ticket-print-brand strong,
    .ticket-print-brand span,
    .ticket-print-document-label strong,
    .ticket-print-document-label span { display:block; }
    .ticket-print-brand strong { color:#10345c; font-size:12pt; letter-spacing:.01em; }
    .ticket-print-brand div > span { margin-top:2px; color:#657b92; font-size:8pt; }
    .ticket-print-document-label { flex-direction:column; align-items:flex-end; text-align:right; }
    .ticket-print-document-label strong { color:#1769b5; font-size:9pt; text-transform:uppercase; letter-spacing:.08em; }
    .ticket-print-document-label span { margin-top:3px; color:#70849a; font-size:8pt; }
    .ticket-print-hero {
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:16px;
        margin-top:15px;
        padding:16px 17px;
        border:1px solid #c9ddf0;
        border-radius:10px;
        background:#f3f8fd;
        break-inside:avoid;
    }
    .ticket-print-eyebrow { margin:0 0 3px; color:#3977ae; font-size:8pt; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
    .ticket-print-hero h1 { margin:0; color:#102f54; font-size:22pt; font-weight:800; line-height:1.12; }
    .ticket-print-title { margin:5px 0 0; color:#263f5c; font-size:11pt; font-weight:700; overflow-wrap:anywhere; }
    .ticket-print-topic {
        flex:0 0 auto;
        padding:5px 9px;
        border:1px solid #c7def3;
        border-radius:999px;
        background:#fff;
        color:#1769b5;
        font-size:8pt;
        font-weight:800;
    }
    .ticket-print-facts {
        display:grid;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap:8px;
        margin-top:10px;
        break-inside:avoid;
    }
    .ticket-print-fact {
        min-height:52px;
        padding:9px 10px;
        border:1px solid #d8e3ed;
        border-radius:8px;
        background:#fff;
    }
    .ticket-print-fact > span,
    .ticket-print-item > span { display:block; margin-bottom:3px; color:#6a7e92; font-size:7.5pt; font-weight:800; letter-spacing:.045em; text-transform:uppercase; }
    .ticket-print-fact > strong { display:block; color:#1b3858; font-size:9pt; }
    .ticket-print-fact > small { display:block; margin-top:2px; color:#6b7e91; font-size:7.5pt; }
    .ticket-print-fact-status { border-color:#a9cfee; background:#f2f8fe; }
    .ticket-print-fact-status > strong { color:#1268b9; }
    .ticket-print-section {
        margin-top:15px;
        break-inside:avoid;
    }
    .ticket-print-section h2 {
        margin:0 0 7px;
        padding-bottom:5px;
        border-bottom:1px solid #dce6ef;
        color:#1a4e7d;
        font-size:9pt;
        font-weight:800;
        letter-spacing:.04em;
        text-transform:uppercase;
    }
    .ticket-print-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:7px 10px; }
    .ticket-print-item { min-width:0; padding:6px 0 5px 9px; border-left:2px solid #c9def1; overflow-wrap:anywhere; }
    .ticket-print-item strong { display:block; color:#193653; font-size:9pt; font-weight:700; overflow-wrap:anywhere; }
    .ticket-print-item small { display:block; margin-top:2px; color:#627990; font-size:8pt; overflow-wrap:anywhere; }
    .ticket-print-description-section { break-inside:auto; }
    .ticket-print-description {
        margin:0;
        padding:10px 12px;
        border:1px solid #d8e3ed;
        border-radius:8px;
        background:#fbfdff;
        color:#263f5a;
        white-space:pre-wrap;
        overflow-wrap:anywhere;
    }
    .ticket-print-custom-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
    .ticket-print-footer {
        margin-top:18px;
        padding-top:7px;
        border-top:1px solid #dce6ef;
        color:#8292a3;
        font-size:7.5pt;
        text-align:center;
    }
    .ticket-print-hero, .ticket-print-fact, .ticket-print-item, .ticket-print-description { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
    a { color:inherit !important; text-decoration:none !important; }
}

.app-notifications { position:relative; margin-left:auto; }
.app-notifications-toggle {
    position:relative;
    display:inline-flex;
    min-height:42px;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:0 13px;
    border:1px solid #d5e3f2;
    border-radius:12px;
    background:#fff;
    color:#18385c;
    font-size:13px;
    font-weight:800;
    box-shadow:0 4px 14px rgba(24,68,114,.07);
    cursor:pointer;
}
.app-notifications-toggle:hover { border-color:#8dbff6; background:#f5faff; }
.app-notifications-toggle:focus-visible,
.app-notifications-panel button:focus-visible,
.app-notification-item:focus-visible { outline:3px solid rgba(37,126,235,.3); outline-offset:2px; }
.app-notifications-toggle svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.app-notifications-count {
    display:grid;
    min-width:19px;
    height:19px;
    place-items:center;
    padding:0 5px;
    border-radius:999px;
    background:#e32942;
    color:#fff;
    font-size:10px;
    line-height:1;
}
.app-notifications-panel {
    position:absolute;
    z-index:80;
    top:calc(100% + 10px);
    right:0;
    width:min(390px, calc(100vw - 28px));
    overflow:hidden;
    border:1px solid #d7e5f4;
    border-radius:16px;
    background:#fff;
    box-shadow:0 22px 55px rgba(15,43,75,.2);
}
.app-notifications-panel[hidden] { display:none; }
.app-notifications-heading {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:16px 17px;
    border-bottom:1px solid #e8eff7;
    background:linear-gradient(110deg,#f2f8ff,#fff);
}
.app-notifications-heading > div { display:grid; gap:3px; }
.app-notifications-heading strong { color:#102d50; font-size:15px; font-weight:900; }
.app-notifications-heading span { color:#72869c; font-size:11px; }
.app-notifications-heading button {
    border:0;
    background:transparent;
    color:#0769ce;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
}
.app-notifications-list { max-height:min(440px, 65vh); overflow:auto; padding:5px; }
.app-notification-item {
    display:grid;
    grid-template-columns:9px minmax(0,1fr);
    gap:10px;
    padding:12px 11px;
    border-radius:10px;
    color:inherit;
    text-decoration:none;
}
.app-notification-item:hover { background:#f4f8fd; }
.app-notification-unread-dot { width:8px; height:8px; margin-top:5px; border-radius:50%; background:transparent; }
.app-notification-item.is-unread { background:#f2f8ff; }
.app-notification-item.is-unread .app-notification-unread-dot { background:#1674e8; box-shadow:0 0 0 3px rgba(22,116,232,.1); }
.app-notification-copy { display:grid; min-width:0; gap:4px; }
.app-notification-title { color:#183756; font-size:12px; font-weight:850; }
.app-notification-title strong { color:#0874d6; }
.app-notification-description { display:-webkit-box; overflow:hidden; color:#526a82; font-size:11px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.app-notification-meta { color:#8a9caf; font-size:10px; }
.app-notifications-empty { margin:0; padding:25px 20px; color:#71859a; font-size:12px; line-height:1.5; text-align:center; }
@media (max-width:520px) {
    .app-notifications-toggle { width:42px; padding:0; }
    .app-notifications-toggle > span:not(.app-notifications-count) { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
    .app-notifications-count { position:absolute; top:-5px; right:-6px; min-width:17px; height:17px; }
    .app-notifications-panel { right:-8px; }
}

/* Menu lateral institucional: sistema visual único, compacto e acessível. */
html[data-theme="light"] #appSidebar.sidebar-pro {
    width:304px !important;
    height:100dvh;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding:0 !important;
    border:0 !important;
    border-right:1px solid #c9dced !important;
    border-radius:0 22px 22px 0;
    background:#f7fbff !important;
    box-shadow:14px 0 38px rgba(17,65,108,.18) !important;
    color:#102a43 !important;
    transform:translateX(calc(-100% - 18px));
    transition:transform .24s cubic-bezier(.22,1,.36,1);
}

html[data-theme="light"] #appSidebar.sidebar-pro.is-open {
    transform:translateX(0);
}

html[data-theme="light"] #appSidebar.sidebar-pro * {
    box-sizing:border-box;
}

html[data-theme="light"] #appSidebar.sidebar-pro > .sidebar-pro-brand {
    position:relative;
    isolation:isolate;
    display:flex;
    min-height:96px;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    overflow:hidden;
    padding:18px 16px 18px 18px;
    border:0 !important;
    background:
        radial-gradient(circle at 86% 0%,rgba(66,169,244,.38),transparent 44%),
        linear-gradient(135deg,#06316f 0%,#0757ad 58%,#0b72c4 100%) !important;
    color:#f8fbff !important;
    backdrop-filter:none !important;
}

.sidebar-pro-brand::after {
    position:absolute;
    inset:auto -38px -67px auto;
    z-index:-1;
    width:180px;
    height:110px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
    content:"";
    transform:rotate(-12deg);
}

.sidebar-pro-brand-link,
html[data-theme="light"] #appSidebar.sidebar-pro a.sidebar-pro-brand-link {
    display:flex;
    min-width:0;
    align-items:center;
    gap:12px;
    color:#f8fbff !important;
    text-decoration:none;
}

html[data-theme="light"] #appSidebar.sidebar-pro a.sidebar-pro-brand-link:hover,
html[data-theme="light"] #appSidebar.sidebar-pro a.sidebar-pro-brand-link:focus,
html[data-theme="light"] #appSidebar.sidebar-pro a.sidebar-pro-brand-link:active {
    background:transparent !important;
    color:#f8fbff !important;
    transform:none !important;
}

.sidebar-pro-logo-wrap {
    display:grid;
    width:54px;
    height:54px;
    flex:0 0 54px;
    place-items:center;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.25);
    border-radius:14px;
    background:rgba(255,255,255,.10);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(1,29,70,.20);
}

.sidebar-pro-logo {
    width:47px;
    height:47px;
    object-fit:contain;
}

.sidebar-pro-brand-copy {
    display:grid;
    min-width:0;
    gap:3px;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-brand-copy strong {
    color:#f8fbff !important;
    font-size:19px;
    font-weight:850;
    letter-spacing:-.02em;
    line-height:1.1;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-brand-copy small {
    color:#d8eaff !important;
    font-size:11px;
    font-weight:650;
    letter-spacing:.01em;
}

.sidebar-pro-close {
    display:grid;
    width:38px;
    height:38px;
    flex:0 0 38px;
    place-items:center;
    border:1px solid rgba(255,255,255,.25);
    border-radius:11px;
    background:rgba(255,255,255,.10);
    color:#f8fbff !important;
    cursor:pointer;
    transition:background-color .16s ease,transform .16s ease;
}

.sidebar-pro-close:hover { background:rgba(255,255,255,.19); }
.sidebar-pro-close:active { transform:scale(.96); }
.sidebar-pro-close:focus-visible,
.sidebar-pro-link:focus-visible,
.sidebar-pro-logout-btn:focus-visible {
    outline:3px solid rgba(56,189,248,.45);
    outline-offset:2px;
}

.sidebar-pro-scroll {
    display:flex;
    min-height:0;
    flex:1;
    flex-direction:column;
    overflow-x:hidden;
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:#b7cee2 transparent;
}

.sidebar-pro-scroll::-webkit-scrollbar { width:5px; }
.sidebar-pro-scroll::-webkit-scrollbar-thumb { border-radius:999px; background:#b7cee2; }

.sidebar-pro-nav {
    display:grid;
    gap:4px;
    padding:16px 14px 10px;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-section-label {
    margin:0 0 5px;
    padding:0 10px;
    color:#617b94 !important;
    font-size:10px;
    font-weight:850 !important;
    letter-spacing:.09em;
    line-height:1.4;
    text-transform:uppercase;
}

.sidebar-pro-group {
    display:grid;
    gap:4px;
    margin-top:9px;
    padding-top:14px;
    border-top:1px solid #d7e5f1;
}

.sidebar-pro-link,
html[data-theme="light"] #appSidebar.sidebar-pro nav a.sidebar-pro-link {
    position:relative;
    display:flex;
    min-height:45px;
    align-items:center;
    gap:11px;
    padding:5px 10px;
    border:1px solid transparent;
    border-radius:12px;
    background:transparent !important;
    color:#203a54 !important;
    box-shadow:none !important;
    font-size:13px;
    font-weight:750 !important;
    line-height:1.2;
    text-decoration:none;
    transform:none;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}

html[data-theme="light"] #appSidebar.sidebar-pro nav a.sidebar-pro-link:not(.is-active):hover {
    border-color:#d6e6f4 !important;
    background:#eaf3fb !important;
    color:#0759aa !important;
}

.sidebar-pro-link-icon {
    display:grid;
    width:34px;
    height:34px;
    flex:0 0 34px;
    place-items:center;
    border-radius:10px;
    background:#e9f3fc;
    color:#0a67bd !important;
    transition:background-color .16s ease,color .16s ease;
}

.sidebar-pro-link-icon svg {
    width:18px;
    height:18px;
    stroke:currentColor;
    stroke-width:1.9;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-link-label {
    min-width:0;
    color:inherit !important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.sidebar-pro-link.is-active,
html[data-theme="light"] #appSidebar.sidebar-pro nav a.sidebar-pro-link.is-active,
html[data-theme="light"] #appSidebar.sidebar-pro nav a.sidebar-pro-link.is-active:hover {
    border-color:#0a5cae !important;
    background:#0a5cae !important;
    color:#f8fbff !important;
    box-shadow:0 8px 18px rgba(7,76,143,.20) !important;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-link.is-active .sidebar-pro-link-icon {
    background:rgba(255,255,255,.15) !important;
    color:#f8fbff !important;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-link.is-active .sidebar-pro-link-icon svg {
    color:#f8fbff !important;
}

.sidebar-pro-account {
    margin:auto 14px 12px;
    padding:13px;
    border:1px solid #d3e3f0;
    border-radius:14px;
    background:#eef6fc;
}

.sidebar-pro-account-header {
    display:flex;
    min-width:0;
    align-items:center;
    gap:11px;
}

.sidebar-pro-avatar {
    display:grid;
    width:46px;
    height:46px;
    flex:0 0 46px;
    place-items:center;
    border-radius:13px;
    background:linear-gradient(145deg,#0757ad,#0c79ca);
    color:#f8fbff;
    box-shadow:0 7px 16px rgba(8,86,163,.20);
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-avatar span {
    color:#f8fbff !important;
    font-size:15px;
    font-weight:850;
    letter-spacing:.02em;
}

.sidebar-pro-account-copy { min-width:0; flex:1; }

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-user-name {
    margin:0;
    overflow:hidden;
    color:#102a43 !important;
    font-size:13px;
    font-weight:850 !important;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-user-role {
    margin:2px 0 0;
    color:#075eaf !important;
    font-size:10px;
    font-weight:800;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-user-sector {
    margin:2px 0 0;
    overflow:hidden;
    color:#637c93 !important;
    font-size:10px;
    font-weight:650;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.sidebar-pro-logout-form { margin-top:11px; }

.sidebar-pro-logout-btn {
    display:flex;
    width:100%;
    min-height:36px;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid #e9b8bd;
    border-radius:10px;
    background:#fbfdff;
    color:#b4232d;
    cursor:pointer;
    font-size:11px;
    font-weight:800;
    transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}

.sidebar-pro-logout-btn svg { width:15px; height:15px; stroke-width:1.9; }
.sidebar-pro-logout-btn:hover { border-color:#dc8f97; background:#fff1f2; }
.sidebar-pro-logout-btn:active { transform:scale(.985); }

.sidebar-pro-footer {
    display:flex;
    min-height:74px;
    align-items:center;
    gap:11px;
    padding:14px 18px;
    background:#06366f;
}

.sidebar-pro-footer-logo {
    width:34px;
    height:40px;
    flex:0 0 34px;
    object-fit:contain;
}

.sidebar-pro-footer div { display:grid; gap:2px; min-width:0; }

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-footer strong {
    color:#f8fbff !important;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
}

html[data-theme="light"] #appSidebar.sidebar-pro .sidebar-pro-footer span {
    color:#c9e3fb !important;
    font-size:9px;
    font-weight:600;
    line-height:1.2;
}

@media (max-height:780px) {
    html[data-theme="light"] #appSidebar.sidebar-pro > .sidebar-pro-brand { min-height:82px; padding-block:13px; }
    .sidebar-pro-logo-wrap { width:48px; height:48px; flex-basis:48px; }
    .sidebar-pro-logo { width:42px; height:42px; }
    .sidebar-pro-nav { padding-top:11px; }
    .sidebar-pro-link,
    html[data-theme="light"] #appSidebar.sidebar-pro nav a.sidebar-pro-link { min-height:41px; }
    .sidebar-pro-link-icon { width:31px; height:31px; flex-basis:31px; }
    .sidebar-pro-account { padding:11px; }
    .sidebar-pro-footer { min-height:62px; padding-block:10px; }
}

@media (max-width:420px) {
    html[data-theme="light"] #appSidebar.sidebar-pro {
        width:min(304px,calc(100vw - 16px)) !important;
        border-radius:0 18px 18px 0;
    }
}

@media (prefers-reduced-motion:reduce) {
    html[data-theme="light"] #appSidebar.sidebar-pro,
    .sidebar-pro-close,
    .sidebar-pro-link,
    .sidebar-pro-link-icon,
    .sidebar-pro-logout-btn { transition:none !important; }
}

/* Escala compacta final dos dois paineis de detalhes do chamado. */
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 { gap:16px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(-n+2) {
    padding:0 12px 12px !important;
    border-radius:14px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child {
    min-height:76px !important;
    margin:0 -12px 10px !important;
    padding:11px 160px 10px 76px !important;
    background:radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after {
    left:16px !important;
    top:14px !important;
    width:48px !important;
    height:48px !important;
    border-radius:12px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 {
    font-size:19px !important;
    line-height:1.1 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before {
    left:-57px !important;
    width:25px !important;
    height:25px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type {
    margin-top:3px !important;
    font-size:10px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after {
    right:14px !important;
    top:15px !important;
    width:132px !important;
    min-height:42px !important;
    padding-right:39px !important;
    background-size:31px 31px !important;
    font-size:8px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) {
    gap:8px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div {
    min-height:74px !important;
    padding:11px 10px 9px 64px !important;
    border-radius:10px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::before {
    left:10px !important;
    top:10px !important;
    width:43px !important;
    height:43px !important;
    border-radius:10px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::after,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::after {
    left:21px !important;
    top:21px !important;
    width:21px !important;
    height:21px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:first-child,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:first-child { font-size:9px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:not(:first-child),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:not(:first-child) { margin-top:3px !important; font-size:14px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:last-child:not(:nth-child(2)) { font-size:11px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6) { min-height:62px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) { padding-top:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before { height:76px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:67px !important; padding-top:2px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-51px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:67px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after { top:-26px !important; width:220px !important; min-height:40px !important; padding:7px 8px 7px 36px !important; border-radius:10px !important; font-size:8px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid { gap:8px !important; margin-top:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:62px !important; padding-top:14px !important; }
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child { min-height:82px !important; padding-left:68px !important; padding-right:12px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { left:12px !important; top:15px !important; width:44px !important; height:44px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after { display:none; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:68px !important; padding-left:60px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:60px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:60px !important; }
}

/* Densidade final: reduz o excesso de altura sem remover informações ou controles. */
html[data-theme="light"] .ticket-detail-page > .ticket-detail-hero {
    min-height:112px;
    margin-bottom:20px !important;
    padding:14px 16px;
    border-radius:16px;
}
html[data-theme="light"] .ticket-detail-hero-intro { min-width:220px; max-width:238px; padding-right:20px; }
html[data-theme="light"] .ticket-detail-hero-intro h1 { margin-top:4px; font-size:24px; }
html[data-theme="light"] .ticket-detail-hero-topic { margin-top:6px; padding:3px 8px; font-size:9px; }
html[data-theme="light"] .ticket-detail-hero-divider { height:50px; }
html[data-theme="light"] .ticket-detail-hero-fact { gap:9px; padding-inline:20px; }
html[data-theme="light"] .ticket-detail-hero-fact:first-child { padding-left:20px; }
html[data-theme="light"] .ticket-detail-hero-icon { width:40px; height:40px; flex-basis:40px; }
html[data-theme="light"] .ticket-detail-hero-icon svg { width:18px; height:18px; }
html[data-theme="light"] .ticket-detail-hero-icon-status i { width:14px; height:14px; }
html[data-theme="light"] .ticket-detail-hero-fact dt { font-size:10px; }
html[data-theme="light"] .ticket-detail-hero-fact dd { font-size:12px; }
html[data-theme="light"] .ticket-detail-hero-back { min-width:96px; min-height:44px; padding-inline:13px; font-size:12px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(-n+2) {
    padding:0 16px 16px !important;
    border-radius:16px;
}
html[data-theme="light"] .ticket-detail-sidebar { gap:16px !important; }
html[data-theme="light"] .ticket-detail-page .ticket-chat-card { border-radius:16px; }
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex { padding:13px 16px; }
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex h2 { font-size:17px; }
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex p { font-size:11px; }
html[data-theme="light"] .ticket-detail-page .ticket-chat-body { height:320px !important; padding:13px; }
@media (max-width:720px) {
    html[data-theme="light"] .ticket-detail-page > .ticket-detail-hero { min-height:0; margin-bottom:16px !important; padding:16px; }
    html[data-theme="light"] .ticket-detail-hero-intro { max-width:none; padding-right:0; }
    html[data-theme="light"] .ticket-detail-hero-fact,
    html[data-theme="light"] .ticket-detail-hero-fact:first-child { padding-left:0; }
    html[data-theme="light"] .ticket-detail-page .ticket-chat-body { height:270px !important; }
}

/* Ajuste final de escala e padronização visual dos detalhes do ticket. */
html[data-theme="light"] .ticket-detail-page > .grid { gap:20px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 { gap:20px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child {
    min-height:91px;
    margin-bottom:16px !important;
    padding:15px 188px 14px 93px;
    background:radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before { left:22px; top:16px; width:59px; height:59px; border-radius:14px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2 { font-size:22px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before { left:-70px; width:30px; height:30px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p { margin-top:4px !important; font-size:12px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after { right:20px; top:19px; width:165px; min-height:49px; padding-right:51px; background-size:38px 38px; font-size:10px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) { gap:12px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:94px; padding:16px 12px 13px 81px !important; border-radius:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::before { left:12px; top:12px; width:54px; height:54px; border-radius:11px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::after,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::after { left:26px; top:26px; width:26px; height:26px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:first-child,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:first-child { font-size:10px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:not(:first-child),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:not(:first-child) { margin-top:5px !important; font-size:16px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:last-child:not(:nth-child(2)) { margin-top:5px !important; font-size:13px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6) { min-height:78px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) { padding-top:17px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before { height:91px; background:radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { left:22px; top:16px; width:59px; height:59px; border-radius:14px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:82px !important; padding-top:3px; font-size:22px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-60px; width:30px; height:30px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:82px !important; margin-top:4px !important; font-size:12px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after { top:-30px; width:270px; min-height:51px; padding:9px 11px 9px 46px; border-radius:12px; font-size:9px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid { gap:12px; margin-top:20px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:78px; padding-top:18px !important; }

html[data-theme="light"] .app-main .ticket-side-card-header {
    min-height:88px;
    gap:12px;
    padding:14px 16px;
    background:radial-gradient(ellipse 78% 150% at 105% -35%,rgba(255,255,255,.18) 0 45%,transparent 45.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
    color:#fff !important;
}
html[data-theme="light"] .app-main .ticket-side-card-heading-icon { width:47px; height:47px; flex-basis:47px; border-radius:12px; }
html[data-theme="light"] .app-main .ticket-side-card-heading-icon svg { width:26px; height:26px; }
html[data-theme="light"] .app-main .ticket-side-card-header h2,
html[data-theme="light"] .app-main .ticket-side-card-header p { color:#fff !important; -webkit-text-fill-color:#fff !important; }
html[data-theme="light"] .app-main .ticket-side-card-header h2 { font-size:21px; }
html[data-theme="light"] .app-main .ticket-side-card-header p { margin-top:4px; font-size:11px; }
html[data-theme="light"] .ticket-summary-card-body { padding:14px 16px 16px; }
html[data-theme="light"] .ticket-summary-assignee { grid-template-columns:31px minmax(0,1fr) auto; gap:9px; padding-bottom:13px; font-size:14px; }
html[data-theme="light"] .ticket-summary-assignee-icon { width:31px; height:31px; }
html[data-theme="light"] .ticket-summary-assignee-icon svg { width:28px; height:28px; }
html[data-theme="light"] .ticket-summary-assignee strong { max-width:130px; font-size:14px; }
html[data-theme="light"] .ticket-summary-next-action { gap:10px; margin-top:13px; padding:11px; border-radius:13px; }
html[data-theme="light"] .ticket-summary-next-action-icon { width:43px; height:43px; flex-basis:43px; }
html[data-theme="light"] .ticket-summary-next-action-icon svg { width:25px; height:25px; }
html[data-theme="light"] .ticket-summary-next-action p { font-size:9px; }
html[data-theme="light"] .ticket-summary-next-action strong { margin-top:3px; font-size:12px; }
html[data-theme="light"] .ticket-ti-actions-form { gap:12px; padding:14px 16px 0; }
html[data-theme="light"] .ticket-ti-action-field { gap:5px; font-size:10px; }
html[data-theme="light"] .ticket-ti-action-field .app-input { min-height:45px; padding-left:13px; font-size:13px; background-position:right 12px center !important; background-size:16px 16px !important; }
html[data-theme="light"] .ticket-ti-save-button,
html[data-theme="light"] .ticket-ti-delete-button { min-height:46px; border-radius:10px !important; font-size:16px; }
html[data-theme="light"] .ticket-ti-save-button svg,
html[data-theme="light"] .ticket-ti-delete-button svg { width:21px; height:21px; }
html[data-theme="light"] .ticket-ti-delete-form { margin:14px 16px 0; padding:14px 0 15px; }
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-page > .grid { gap:16px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 { gap:16px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child { min-height:96px; margin:0 -14px 13px !important; padding:16px 14px 13px 78px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before { left:14px; top:17px; width:52px; height:52px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2 { font-size:20px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before { left:-58px; width:26px; height:26px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p { font-size:11px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:86px; padding-left:76px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) { padding-top:15px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before { height:96px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { left:14px; top:17px; width:52px; height:52px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:70px !important; font-size:20px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-54px; width:26px; height:26px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:70px !important; font-size:11px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after { display:none; }
    html[data-theme="light"] .app-main .ticket-side-card-header { min-height:88px; padding:14px; }
    html[data-theme="light"] .app-main .ticket-side-card-heading-icon { width:44px; height:44px; flex-basis:44px; }
    html[data-theme="light"] .app-main .ticket-side-card-header h2 { font-size:20px; }
}

/* Cabeçalho de detalhes: resumo horizontal do ticket. */
html[data-theme="light"] .ticket-detail-page > .ticket-detail-hero {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    min-height:132px;
    margin-bottom:24px;
    padding:16px 18px;
    border:1px solid #c8e2fb;
    border-radius:16px;
    background:linear-gradient(105deg,#fbfdff 0%,#ffffff 58%,#f7fbff 100%);
    box-shadow:0 11px 25px rgba(33,103,166,.09), inset 0 1px 0 rgba(255,255,255,.96);
    color:#102b4b;
}
.ticket-detail-hero-content {
    display:flex;
    align-items:center;
    flex:1 1 auto;
    min-width:0;
}
.ticket-detail-hero-intro {
    min-width:238px;
    max-width:255px;
    padding-right:26px;
}
.ticket-detail-hero-intro > p:first-child {
    margin:0;
    color:#6b82a1;
    font-size:11px;
    font-weight:850;
    letter-spacing:.015em;
    line-height:1.2;
    text-transform:uppercase;
}
.ticket-detail-hero-intro h1 {
    margin:5px 0 4px;
    color:#102b4b;
    font-size:27px;
    font-weight:900;
    letter-spacing:-.025em;
    line-height:1;
}
.ticket-detail-hero-intro h1 span { color:#0582cd; }
.ticket-detail-hero-title {
    margin:0;
    overflow:hidden;
    color:#59708e;
    font-size:13px;
    font-weight:650;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ticket-detail-hero-topic {
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin-top:8px;
    padding:4px 9px;
    border:1px solid #aed8ff;
    border-radius:999px;
    background:#eaf5ff;
    color:#076cc9;
    font-size:10px;
    font-weight:850;
    line-height:1;
}
.ticket-detail-hero-topic svg {
    width:12px;
    height:12px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:2.15;
}
.ticket-detail-hero-divider {
    width:1px;
    height:58px;
    flex:0 0 1px;
    background:#dceaf7;
}
.ticket-detail-hero-facts {
    display:flex;
    align-items:center;
    flex:1 1 auto;
    min-width:0;
    margin:0;
}
.ticket-detail-hero-fact {
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    padding:0 28px;
}
.ticket-detail-hero-fact:first-child { padding-left:28px; }
.ticket-detail-hero-fact + .ticket-detail-hero-fact { border-left:1px solid #e2edf8; }
.ticket-detail-hero-fact > div { min-width:0; }
.ticket-detail-hero-fact dt {
    margin:0 0 4px;
    overflow:hidden;
    color:#7185a0;
    font-size:12px;
    font-weight:600;
    line-height:1.1;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ticket-detail-hero-fact dd {
    margin:0;
    overflow:hidden;
    color:#162d4b;
    font-size:14px;
    font-weight:850;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ticket-detail-hero-icon {
    display:grid;
    width:46px;
    height:46px;
    flex:0 0 46px;
    place-items:center;
    border-radius:50%;
    background:linear-gradient(145deg,#eef7ff,#f8fbff);
    color:#0e69bc;
}
.ticket-detail-hero-icon svg {
    width:21px;
    height:21px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.8;
}
.ticket-detail-hero-icon-status { background:linear-gradient(145deg,#edf9f2,#f8fffb); }
.ticket-detail-hero-icon-status i {
    display:block;
    width:17px;
    height:17px;
    border:2px solid rgba(255,255,255,.72);
    border-radius:50%;
    box-shadow:0 0 0 2px rgba(20,129,76,.05);
}
.ticket-detail-hero-back {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-width:109px;
    min-height:50px;
    flex:0 0 auto;
    padding:0 16px;
    border:1px solid #1478c7;
    border-radius:10px;
    background:linear-gradient(135deg,#0c81d5,#0867b4);
    box-shadow:0 8px 16px rgba(2,104,184,.22);
    color:#fff !important;
    font-size:14px;
    font-weight:850;
    line-height:1;
    text-decoration:none;
}
.ticket-detail-hero-back:hover {
    background:linear-gradient(135deg,#0875c5,#075b9f);
    box-shadow:0 10px 18px rgba(2,104,184,.28);
    color:#fff !important;
    transform:translateY(-1px);
}
.ticket-detail-hero-back svg {
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:2.25;
}
@media (max-width:1250px) {
    .ticket-detail-hero-fact { padding:0 18px; }
    .ticket-detail-hero-fact:first-child { padding-left:18px; }
}
@media (max-width:1020px) {
    html[data-theme="light"] .ticket-detail-page > .ticket-detail-hero { align-items:flex-start; }
    .ticket-detail-hero-content { align-items:flex-start; }
    .ticket-detail-hero-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 0; }
    .ticket-detail-hero-fact { padding:0 16px; }
    .ticket-detail-hero-fact:first-child { padding-left:16px; }
    .ticket-detail-hero-fact:nth-child(3) { border-left:0; }
}
@media (max-width:720px) {
    html[data-theme="light"] .ticket-detail-page > .ticket-detail-hero { align-items:stretch; flex-direction:column; gap:18px; padding:18px; }
    .ticket-detail-hero-content { align-items:stretch; flex-direction:column; gap:16px; }
    .ticket-detail-hero-intro { width:100%; max-width:none; padding:0; }
    .ticket-detail-hero-divider { display:none; }
    .ticket-detail-hero-facts { grid-template-columns:1fr; gap:12px; }
    .ticket-detail-hero-fact,.ticket-detail-hero-fact:first-child { padding:0; }
    .ticket-detail-hero-fact + .ticket-detail-hero-fact { padding-top:12px; border-top:1px solid #e2edf8; border-left:0; }
    .ticket-detail-hero-back { align-self:flex-start; }
}

/* Dados e especificações do ticket: composição institucional em dois módulos. */
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 {
    display:grid;
    gap:28px;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > :not([hidden]) ~ :not([hidden]) {
    margin-top:0;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(-n+2) {
    overflow:hidden;
    padding:0 20px 24px !important;
    border:0 !important;
    border-radius:20px;
    background:#f8fcff !important;
    box-shadow:0 15px 30px rgba(42,112,174,.13) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child {
    position:relative;
    z-index:0;
    display:flex;
    align-items:center;
    min-height:110px;
    margin:0 -20px 22px !important;
    padding:21px 210px 20px 127px;
    overflow:hidden;
    background:
        radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),
        linear-gradient(108deg,#075ae5 0%,#0977ed 47%,#1ca8ed 100%);
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after {
    position:absolute;
    left:27px;
    top:20px;
    width:74px;
    height:74px;
    border-radius:17px;
    background:linear-gradient(145deg,rgba(112,198,255,.38),rgba(91,162,241,.23));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
    content:"";
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after {
    position:absolute;
    right:27px;
    top:27px;
    width:207px;
    min-height:57px;
    box-sizing:border-box;
    padding:5px 62px 5px 0;
    border-right:1px solid rgba(255,255,255,.82);
    background-image:url('../logo.avif');
    background-position:right center;
    background-repeat:no-repeat;
    background-size:47px 47px;
    color:#fff;
    content:"Gestão de TI\A Prefeitura de Extrema";
    filter:brightness(0) invert(1);
    font-size:12px;
    font-weight:600;
    line-height:1.55;
    text-align:right;
    white-space:pre;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 {
    position:relative;
    z-index:1;
    margin:0 !important;
    color:#fff !important;
    font-size:27px;
    font-weight:850;
    letter-spacing:-.025em;
    line-height:1.15;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before {
    position:absolute;
    left:-101px;
    top:50%;
    width:36px;
    height:36px;
    background-color:#fff;
    content:"";
    transform:translateY(-50%);
    -webkit-mask:center / contain no-repeat;
    mask:center / contain no-repeat;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zm0 2.8L17.2 8H14zM8 13h8v2H8zm0 4h8v2H8zm0-8h3v2H8z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2-2V8zm0 2.8L17.2 8H14zM8 13h8v2H8zm0 4h8v2H8zm0-8h3v2H8z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type {
    position:relative;
    z-index:1;
    margin:5px 0 0 !important;
    color:rgba(255,255,255,.96) !important;
    font-size:16px;
    font-weight:500;
    line-height:1.25;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div {
    position:relative;
    min-height:121px;
    box-sizing:border-box;
    padding:22px 17px 17px 99px !important;
    overflow:hidden;
    border:1px solid #d8eafa !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 4px 9px rgba(35,101,161,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::before {
    position:absolute;
    left:16px;
    top:16px;
    width:63px;
    height:63px;
    border-radius:13px;
    background:linear-gradient(145deg,#eaf5ff,#e3f1ff);
    content:"";
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::after,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::after {
    position:absolute;
    left:32px;
    top:32px;
    width:31px;
    height:31px;
    background-color:#0967db;
    content:"";
    -webkit-mask:center / contain no-repeat;
    mask:center / contain no-repeat;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:first-child,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:first-child {
    margin:0 !important;
    color:#597293 !important;
    font-size:12px;
    font-weight:850;
    letter-spacing:.015em;
    line-height:1.2;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:not(:first-child),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:not(:first-child) {
    margin:7px 0 0 !important;
    color:#10204a !important;
    font-size:19px;
    font-weight:850 !important;
    line-height:1.18;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:last-child:not(:nth-child(2)) {
    margin-top:8px !important;
    color:#556f95 !important;
    font-size:16px;
    font-weight:500 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6) {
    grid-column:span 2;
    min-height:99px;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(1)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0 2c-5 0-9 2.5-9 5.5V22h18v-2.5C21 16.5 17 14 12 14Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0 2c-5 0-9 2.5-9 5.5V22h18v-2.5C21 16.5 17 14 12 14Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(2)::after,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div:nth-child(1)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8a15.5 15.5 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25c1.1.37 2.3.56 3.55.56a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1C10.58 21 3 13.42 3 4a1 1 0 0 1 1-1h3.48a1 1 0 0 1 1 1c0 1.25.19 2.45.56 3.55a1 1 0 0 1-.25 1Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8a15.5 15.5 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25c1.1.37 2.3.56 3.55.56a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1C10.58 21 3 13.42 3 4a1 1 0 0 1 1-1h3.48a1 1 0 0 1 1 1c0 1.25.19 2.45.56 3.55a1 1 0 0 1-.25 1Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(3)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5s-3 1.34-3 3 1.34 3 3 3ZM8 11c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5 5 6.34 5 8s1.34 3 3 3Zm0 2c-2.33 0-7 1.17-7 3.5V19h10v-2.5C11 14.17 6.33 13 8 13Zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5s-3 1.34-3 3 1.34 3 3 3ZM8 11c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5 5 6.34 5 8s1.34 3 3 3Zm0 2c-2.33 0-7 1.17-7 3.5V19h10v-2.5C11 14.17 6.33 13 8 13Zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(4)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M19 4h-1V2h-2v2H8V2H6v2H5a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Zm0 15H5V9h14Zm-3-6-5 5-3-3 1.4-1.4 1.6 1.58 3.58-3.58Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M19 4h-1V2h-2v2H8V2H6v2H5a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2Zm0 15H5V9h14Zm-3-6-5 5-3-3 1.4-1.4 1.6 1.58 3.58-3.58Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21h18v-2H3v2Zm2-4h14V9l-7-5-7 5v8Zm4-6h2v4H9v-4Zm4 0h2v4h-2v-4Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21h18v-2H3v2Zm2-4h14V9l-7-5-7 5v8Zm4-6h2v4H9v-4Zm4 0h2v4h-2v-4Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3h4v4h-4V3Zm-6 14h4v4H4v-4Zm12 0h4v4h-4v-4ZM6 15v-3a2 2 0 0 1 2-2h3V7h2v3h3a2 2 0 0 1 2 2v3h-2v-3H8v3H6Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3h4v4h-4V3Zm-6 14h4v4H4v-4Zm12 0h4v4h-4v-4ZM6 15v-3a2 2 0 0 1 2-2h3V7h2v3h3a2 2 0 0 1 2 2v3h-2v-3H8v3H6Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) {
    position:relative;
    z-index:0;
    padding-top:24px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before {
    position:absolute;
    z-index:0;
    top:0;
    right:0;
    left:0;
    height:111px;
    border-radius:20px 20px 0 0;
    background:
        radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),
        linear-gradient(108deg,#075ae5 0%,#0977ed 47%,#1ca8ed 100%);
    content:"";
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { z-index:1; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 {
    margin-left:107px !important;
    padding-top:6px;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before {
    left:-80px;
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M19.4 13a7.9 7.9 0 0 0 .05-1 7.9 7.9 0 0 0-.05-1l2.1-1.63-2-3.46-2.48 1a7.7 7.7 0 0 0-1.73-1L14.9 3h-4l-.38 2.91a7.7 7.7 0 0 0-1.73 1l-2.48-1-2 3.46L6.4 11a7.9 7.9 0 0 0-.05 1c0 .34.02.67.05 1l-2.1 1.63 2 3.46 2.48-1a7.7 7.7 0 0 0 1.73 1L10.9 21h4l.38-2.91a7.7 7.7 0 0 0 1.73-1l2.48 1 2-3.46L19.4 13ZM12.9 15.5a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M19.4 13a7.9 7.9 0 0 0 .05-1 7.9 7.9 0 0 0-.05-1l2.1-1.63-2-3.46-2.48 1a7.7 7.7 0 0 0-1.73-1L14.9 3h-4l-.38 2.91a7.7 7.7 0 0 0-1.73 1l-2.48-1-2 3.46L6.4 11a7.9 7.9 0 0 0-.05 1c0 .34.02.67.05 1l-2.1 1.63 2 3.46 2.48-1a7.7 7.7 0 0 0 1.73 1L10.9 21h4l.38-2.91a7.7 7.7 0 0 0 1.73-1l2.48 1 2-3.46L19.4 13ZM12.9 15.5a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type {
    margin-left:107px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after {
    position:absolute;
    right:0;
    top:-40px;
    width:345px;
    box-sizing:border-box;
    min-height:68px;
    padding:13px 16px 13px 63px;
    border-radius:16px;
    background:rgba(0,91,213,.42);
    color:#fff;
    content:"ⓘ  Estas informações ajudam a equipe de TI\A entender e atender seu chamado mais rapidamente.";
    font-size:12px;
    font-weight:600;
    line-height:1.4;
    text-align:left;
    white-space:pre-line;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:31px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div {
    min-height:100px;
    padding-top:26px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div:nth-child(3) {
    grid-column:1 / -1;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div:nth-child(2)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div:nth-child(3)::after {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm3 5v2h10V8Zm0 4v2h7v-2Z'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm3 5v2h10V8Zm0 4v2h7v-2Z'/%3E%3C/svg%3E");
}
@media (max-width:1280px) {
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(-n+2) { padding:0 14px 16px !important; border-radius:16px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child { min-height:116px; margin:0 -14px 14px !important; padding:19px 17px 16px 95px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { left:17px; top:22px; width:60px; height:60px; border-radius:14px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { font-size:21px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-76px; width:30px; height:30px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { font-size:13px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after { display:none; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2),
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid { grid-template-columns:1fr; gap:12px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5),
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6),
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div:nth-child(3) { grid-column:auto; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) { padding-top:19px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before { height:114px; border-radius:16px 16px 0 0; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:78px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-61px; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid { margin-top:31px !important; }
}

/* Lateral do ticket: resumo e ações da TI. */
html[data-theme="light"] .ticket-detail-sidebar {
    align-self:start;
}
html[data-theme="light"] .ticket-detail-sidebar .ticket-summary-card,
html[data-theme="light"] .ticket-detail-sidebar .ticket-ti-actions-card {
    overflow:hidden;
    padding:0 !important;
    border:1px solid #c7e2fb !important;
    border-radius:20px;
    background:#fff !important;
    box-shadow:0 15px 32px rgba(39,110,172,.14) !important;
}
.ticket-side-card-header {
    position:relative;
    display:flex;
    align-items:center;
    gap:16px;
    min-height:116px;
    padding:21px 22px;
    overflow:hidden;
    background:
        radial-gradient(ellipse 78% 150% at 105% -35%,rgba(255,255,255,.18) 0 45%,transparent 45.4%),
        linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%);
    color:#fff;
}
html[data-theme="light"] .app-main .ticket-side-card-header {
    border:0 !important;
    background:
        radial-gradient(ellipse 78% 150% at 105% -35%,rgba(255,255,255,.18) 0 45%,transparent 45.4%),
        linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
    color:#fff !important;
}
.ticket-side-card-header::before {
    position:absolute;
    right:-45px;
    bottom:-78px;
    width:300px;
    height:180px;
    border:32px solid rgba(255,255,255,.11);
    border-radius:50%;
    content:"";
    transform:rotate(-12deg);
}
.ticket-side-card-header > * { position:relative; z-index:1; }
.ticket-side-card-heading-icon {
    display:grid;
    width:61px;
    height:61px;
    flex:0 0 61px;
    place-items:center;
    border-radius:16px;
    background:linear-gradient(145deg,rgba(106,194,255,.47),rgba(72,135,231,.28));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.ticket-side-card-heading-icon svg {
    width:32px;
    height:32px;
    fill:none;
    stroke:#fff;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:2.1;
}
.ticket-ti-actions-card .ticket-side-card-heading-icon svg { fill:#fff; stroke:none; }
html[data-theme="light"] .ticket-side-card-header h2 {
    margin:0;
    color:#fff !important;
    font-size:25px;
    font-weight:900;
    letter-spacing:-.025em;
    line-height:1.1;
}
html[data-theme="light"] .ticket-side-card-header p {
    margin:6px 0 0;
    color:rgba(255,255,255,.94) !important;
    font-size:13px;
    font-weight:500;
    line-height:1.32;
}
.ticket-summary-card-body {
    position:relative;
    z-index:1;
    margin-top:-2px;
    padding:18px 20px 20px;
    border-radius:20px 20px 0 0;
    background:#fff;
}
.ticket-summary-assignee {
    display:grid;
    grid-template-columns:37px minmax(0,1fr) auto;
    align-items:center;
    gap:11px;
    padding:3px 0 17px;
    border-bottom:1px solid #d4e7f7;
    color:#112b4e;
    font-size:17px;
    font-weight:800;
}
.ticket-summary-assignee-icon {
    display:grid;
    width:37px;
    height:37px;
    place-items:center;
    color:#6d85a5;
}
.ticket-summary-assignee-icon svg {
    width:33px;
    height:33px;
    fill:#6d85a5;
    stroke:#6d85a5;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.75;
}
.ticket-summary-assignee strong {
    max-width:150px;
    overflow:hidden;
    color:#0c1f4a;
    font-size:17px;
    font-weight:900;
    text-align:right;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ticket-summary-next-action {
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:17px;
    padding:15px;
    border-radius:16px;
    background:linear-gradient(135deg,#e4f2ff 0%,#f2f9ff 100%);
}
.ticket-summary-next-action-icon {
    display:grid;
    width:54px;
    height:54px;
    flex:0 0 54px;
    place-items:center;
    border-radius:50%;
    background:linear-gradient(145deg,#cfe8ff,#badcff);
    color:#0661c9;
}
.ticket-summary-next-action-icon svg {
    width:31px;
    height:31px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:2.05;
}
.ticket-summary-next-action > div { min-width:0; }
.ticket-summary-next-action p {
    margin:0;
    color:#075dcc;
    font-size:11px;
    font-weight:900;
    letter-spacing:.035em;
    line-height:1.2;
    text-transform:uppercase;
}
.ticket-summary-next-action strong {
    display:block;
    margin-top:5px;
    color:#10224b;
    font-size:14px;
    font-weight:800;
    line-height:1.3;
}
.ticket-ti-actions-form {
    position:relative;
    z-index:1;
    display:grid;
    gap:17px;
    margin-top:-2px;
    padding:20px 20px 0;
    border-radius:20px 20px 0 0;
    background:#fff;
}
.ticket-ti-action-field {
    display:grid;
    gap:7px;
    color:#536d91;
    font-size:14px;
    font-weight:750;
    line-height:1.2;
}
html[data-theme="light"] .ticket-ti-action-field .app-input {
    width:100%;
    min-height:55px;
    padding:0 47px 0 16px;
    border:1px solid #aac8e4 !important;
    border-radius:13px;
    appearance:none;
    background-color:#fff !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b3a78' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
    background-position:right 16px center !important;
    background-repeat:no-repeat !important;
    background-size:19px 19px !important;
    box-shadow:inset 0 1px 1px rgba(61,121,179,.05) !important;
    color:#10224b !important;
    font-size:16px;
    font-weight:700;
}
html[data-theme="light"] .ticket-ti-action-field .app-input:focus {
    border-color:#1685e5 !important;
    box-shadow:0 0 0 3px rgba(22,133,229,.14) !important;
}
html[data-theme="light"] .ticket-ti-action-field input[type="number"].app-input {
    padding-right:16px;
    appearance:auto;
    background-image:none !important;
}
.ticket-ti-action-field small { color:#72839a; font-size:11px; font-weight:500; line-height:1.35; }
.ticket-sla-summary { display:grid; gap:10px; }
.ticket-sla-summary-details { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.ticket-sla-summary-details strong { color:#1e3a5f; font-size:14px; }
.ticket-sla-due { margin:0; color:#64748b; font-size:12px; }
html[data-theme="dark"] .ticket-sla-summary-details strong { color:#eff6ff; }
html[data-theme="dark"] .ticket-sla-due { color:#a8bdd4; }
.ticket-sla-status { display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; font-size:11px; font-weight:800; }
.ticket-sla-status-sem_prazo,.ticket-sla-status-cancelado { background:#e2e8f0; color:#475569; }
.ticket-sla-status-no_prazo,.ticket-sla-status-finalizado_no_prazo { background:#dcfce7; color:#166534; }
.ticket-sla-status-proximo { background:#fef3c7; color:#92400e; }
.ticket-sla-status-vencido,.ticket-sla-status-finalizado_fora_prazo { background:#fee2e2; color:#991b1b; }
.ticket-ti-save-button,
.ticket-ti-delete-button {
    min-height:56px;
    border-radius:13px !important;
    font-size:19px;
    font-weight:900;
    letter-spacing:-.015em;
}
.ticket-ti-save-button {
    margin-top:2px;
    border:1px solid #0b78d6;
    background:linear-gradient(112deg,#075fcf,#0878e6 56%,#26a9ee) !important;
    box-shadow:0 10px 19px rgba(3,103,206,.19) !important;
}
.ticket-ti-save-button svg,
.ticket-ti-delete-button svg {
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:2.15;
}
.ticket-ti-save-button:hover { filter:brightness(1.04); }
.ticket-ti-delete-form {
    margin:20px 20px 0;
    padding:20px 0 20px;
    border-top:1px solid #cce4f8;
}
.ticket-ti-delete-button {
    border:1px solid #e3283c;
    background:linear-gradient(112deg,#d51f32,#ea2639 55%,#fa4a56) !important;
    box-shadow:0 10px 19px rgba(219,38,55,.18) !important;
}
.ticket-ti-delete-button:hover { filter:brightness(1.035); }
@media (max-width:1280px) {
    .ticket-side-card-header { min-height:108px; padding:19px; }
    .ticket-side-card-heading-icon { width:56px; height:56px; flex-basis:56px; border-radius:14px; }
    html[data-theme="light"] .ticket-side-card-header h2 { font-size:23px; }
    .ticket-summary-card-body,.ticket-ti-actions-form { padding-inline:17px; }
    .ticket-ti-delete-form { margin-inline:17px; }
}
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-sidebar .ticket-summary-card,
    html[data-theme="light"] .ticket-detail-sidebar .ticket-ti-actions-card { border-radius:17px; }
    .ticket-side-card-header { min-height:102px; gap:13px; padding:17px; }
    .ticket-side-card-heading-icon { width:51px; height:51px; flex-basis:51px; border-radius:13px; }
    .ticket-side-card-heading-icon svg { width:28px; height:28px; }
    html[data-theme="light"] .ticket-side-card-header h2 { font-size:21px; }
    html[data-theme="light"] .ticket-side-card-header p { font-size:12px; }
    .ticket-summary-card-body { padding:16px; }
    .ticket-summary-assignee { grid-template-columns:33px minmax(0,1fr); gap:9px; font-size:15px; }
    .ticket-summary-assignee-icon { width:33px; height:33px; }
    .ticket-summary-assignee-icon svg { width:30px; height:30px; }
    .ticket-summary-assignee strong { grid-column:2; max-width:none; margin-top:-7px; font-size:15px; text-align:left; }
    .ticket-summary-next-action { gap:12px; padding:13px; }
    .ticket-summary-next-action-icon { width:48px; height:48px; flex-basis:48px; }
    .ticket-summary-next-action strong { font-size:13px; }
    .ticket-ti-actions-form { gap:15px; padding:17px 16px 0; }
    .ticket-ti-action-field { font-size:13px; }
    html[data-theme="light"] .ticket-ti-action-field .app-input { min-height:53px; font-size:15px; }
    .ticket-ti-save-button,.ticket-ti-delete-button { min-height:54px; font-size:17px; }
    .ticket-ti-delete-form { margin:18px 16px 0; padding-block:18px; }
}

/* No cadastro, e-mail e senha também usam o contorno externo do controle. */
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input#email,
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input#senha {
    width:100%;
    min-width:0;
    height:66px;
    margin:0;
    padding:0 18px;
    border:0 !important;
    border-radius:inherit;
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
}

/* O tema legado escurecia qualquer input focado. O cadastro permanece claro em todos os estados. */
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input,
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input:hover,
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input:focus,
html[data-theme="light"] body.login-theme.login-redesign-theme.cadastro-page .login-control > input:active {
    background:transparent !important;
    background-color:transparent !important;
    border-color:transparent !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    box-shadow:none !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input:-webkit-autofill,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input:-webkit-autofill:hover,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input:-webkit-autofill:focus {
    -webkit-text-fill-color:#102e55 !important;
    -webkit-box-shadow:0 0 0 1000px #fff inset !important;
    box-shadow:0 0 0 1000px #fff inset !important;
}

/* Login - institutional blue gradient redesign. */
html[data-theme="light"] body.login-theme.login-redesign-theme {
    min-width:0;
    margin:0;
    color-scheme:light;
    background:#0754ca;
    color:#102e55;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.login-redesign-theme *,
.login-redesign-theme *::before,
.login-redesign-theme *::after { box-sizing:border-box; }
.login-redesign-theme .login-page {
    position:relative;
    display:grid;
    min-height:100dvh;
    place-items:center;
    overflow:hidden;
    padding:48px 24px 36px;
    isolation:isolate;
    background:linear-gradient(142deg,#063bb4 0%,#0668d7 46%,#18c7e4 100%);
}
.login-redesign-theme .login-page::before {
    position:absolute;
    z-index:-2;
    top:-20%; left:-23%;
    width:min(70vw,760px);
    aspect-ratio:1;
    border:1px solid rgba(203,247,255,.34);
    border-radius:50%;
    background:linear-gradient(145deg,rgba(96,225,249,.7),rgba(25,181,238,.06) 70%);
    box-shadow:inset -20px 0 50px rgba(0,61,184,.17);
    content:"";
}
.login-redesign-theme .login-page::after {
    position:absolute;
    z-index:-2;
    right:-12%; bottom:-30%;
    width:min(64vw,700px);
    height:min(54vw,590px);
    border:1px solid rgba(200,252,255,.34);
    border-radius:55% 0 0;
    background:linear-gradient(148deg,rgba(7,46,169,.54),rgba(0,179,233,.07));
    content:"";
    transform:rotate(-18deg);
}
.login-redesign-theme .login-layout {
    position:relative;
    z-index:1;
    width:min(100%,620px);
}
.login-redesign-theme .login-layout::after {
    position:absolute;
    z-index:-1;
    top:11%; right:-51%;
    width:350px; height:440px;
    opacity:.08;
    background:center/contain no-repeat url('../logo.avif');
    content:"";
    filter:grayscale(1) brightness(3);
    pointer-events:none;
}
.login-redesign-theme .login-brand { margin:0 auto 30px; text-align:center; color:#fff; }
.login-redesign-theme .login-brand-tile {
    display:grid;
    width:112px; height:112px;
    margin:0 auto 16px;
    place-items:center;
    overflow:hidden;
    border:2px solid rgba(126,234,255,.75);
    border-radius:30px;
    background:linear-gradient(145deg,#042f88,#0758c9);
    box-shadow:0 16px 30px rgba(0,32,126,.30),inset 0 1px 0 rgba(255,255,255,.22);
}
.login-redesign-theme .login-brand-tile img { display:block; width:100%; height:100%; object-fit:cover; }
.login-redesign-theme .login-brand h1 {
    margin:0;
    color:#fff;
    font-size:50px;
    font-weight:850;
    line-height:1;
    letter-spacing:0;
    text-shadow:0 2px 12px rgba(0,28,119,.2);
}
.login-redesign-theme .login-brand p { margin:9px 0 0; color:#b9efff; font-size:19px; font-weight:500; }
.login-redesign-theme .login-card {
    position:relative;
    overflow:hidden;
    padding:38px 52px 34px;
    border:1px solid #bee9ff;
    border-radius:32px;
    background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(245,251,255,.98));
    box-shadow:0 28px 48px rgba(0,40,133,.27),inset 0 1px rgba(255,255,255,.92);
}
.login-redesign-theme .login-card::before {
    position:absolute;
    top:0; left:0;
    width:170px; height:170px;
    border-radius:0 0 100% 0;
    background:linear-gradient(135deg,rgba(213,239,255,.58),transparent 74%);
    content:"";
    pointer-events:none;
}
.login-redesign-theme .login-card-heading { position:relative; margin:0 auto 26px; text-align:center; }
.login-redesign-theme .login-kicker {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin:0 0 10px;
    color:#275ca3;
    font-size:13px;
    font-weight:850;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.login-redesign-theme .login-kicker svg { width:16px; height:16px; }
.login-redesign-theme .login-card h2 { margin:0; color:#102e55; font-size:40px; font-weight:850; line-height:1.05; letter-spacing:0; }
.login-redesign-theme .login-card-heading > p:last-child { max-width:420px; margin:12px auto 0; color:#506b8d; font-size:16px; line-height:1.48; }
.login-redesign-theme .login-alert { position:relative; margin:0 0 18px; padding:13px 16px; border:1px solid; border-radius:14px; font-size:14px; font-weight:700; line-height:1.4; text-align:left; }
.login-redesign-theme .login-alert-error { border-color:#fecaca; background:#fff5f5; color:#b42318; }
.login-redesign-theme .login-alert-success { border-color:#b7e6cb; background:#f1fbf5; color:#157343; }
.login-redesign-theme .login-form { display:grid; gap:20px; width:100%; margin:0; }
.login-redesign-theme .login-field { min-width:0; }
.login-redesign-theme .login-field label {
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 8px;
    color:#183b69;
    font-size:16px;
    font-weight:800;
    line-height:1.2;
}
.login-redesign-theme .login-field label svg { width:19px; height:19px; color:#2762aa; stroke-width:2.5; }
.login-redesign-theme .login-control {
    position:relative;
    display:flex;
    min-width:0;
    min-height:68px;
    align-items:center;
    border:1px solid #c4daf3;
    border-radius:18px;
    background:#fff;
    box-shadow:0 2px 0 rgba(15,67,133,.025);
    transition:border-color .18s ease,box-shadow .18s ease;
}
.login-redesign-theme .login-control:focus-within { border-color:#0873d8; box-shadow:0 0 0 4px rgba(8,115,216,.16); }
.login-redesign-theme .login-control-icon { flex:0 0 auto; width:24px; height:24px; margin:0 17px 0 19px; color:#37689d; stroke-width:2.2; }
html[data-theme="light"] .login-redesign-theme .login-control input#email,
html[data-theme="light"] .login-redesign-theme .login-control input#senha,
html[data-theme="light"] .login-redesign-theme .login-control input#email:hover,
html[data-theme="light"] .login-redesign-theme .login-control input#senha:hover,
html[data-theme="light"] .login-redesign-theme .login-control input#email:focus,
html[data-theme="light"] .login-redesign-theme .login-control input#senha:focus {
    width:100%; min-width:0; height:66px; margin:0; padding:0 16px 0 0;
    border:0 !important; border-radius:0; outline:0;
    appearance:none;
    background:#fff !important; background-color:#fff !important;
    color:#102e55 !important; -webkit-text-fill-color:#102e55 !important;
    caret-color:#0873d8; box-shadow:none !important;
    font:inherit; font-size:18px; font-weight:600;
}
html[data-theme="light"] .login-redesign-theme .login-password-control input#senha { padding-right:52px; }
html[data-theme="light"] .login-redesign-theme .login-control input#email:-webkit-autofill,
html[data-theme="light"] .login-redesign-theme .login-control input#email:-webkit-autofill:hover,
html[data-theme="light"] .login-redesign-theme .login-control input#email:-webkit-autofill:focus,
html[data-theme="light"] .login-redesign-theme .login-control input#senha:-webkit-autofill,
html[data-theme="light"] .login-redesign-theme .login-control input#senha:-webkit-autofill:hover,
html[data-theme="light"] .login-redesign-theme .login-control input#senha:-webkit-autofill:focus {
    -webkit-text-fill-color:#102e55 !important;
    -webkit-box-shadow:0 0 0 1000px #fff inset !important;
    box-shadow:0 0 0 1000px #fff inset !important;
    caret-color:#0873d8;
}
.login-redesign-theme .login-password-toggle {
    position:absolute; right:10px;
    display:grid; width:40px; height:40px;
    place-items:center;
    border:0; border-radius:12px;
    background:transparent; color:#34649a; cursor:pointer;
}
.login-redesign-theme .login-password-toggle:hover,
.login-redesign-theme .login-password-toggle:focus-visible { background:#edf6ff; color:#0868c9; outline:0; }
.login-redesign-theme .login-password-toggle svg { width:23px; height:23px; stroke-width:2.25; }
.login-redesign-theme .login-eye-closed { display:none; }
.login-redesign-theme .login-password-toggle.is-visible .login-eye-open { display:none; }
.login-redesign-theme .login-password-toggle.is-visible .login-eye-closed { display:block; }
.login-redesign-theme .login-remember { display:flex; align-items:center; gap:10px; width:max-content; max-width:100%; color:#24496f; font-size:15px; font-weight:650; cursor:pointer; }
.login-redesign-theme .login-remember input { width:21px; height:21px; margin:0; accent-color:#0873e1; cursor:pointer; }
.login-redesign-theme .login-submit {
    display:flex; min-height:67px; align-items:center; justify-content:center; gap:14px;
    width:100%; border:0; border-radius:20px;
    background:linear-gradient(100deg,#0753dd 0%,#0a76e9 50%,#14c9df 100%);
    color:#fff; cursor:pointer;
    box-shadow:0 12px 20px rgba(0,60,187,.28),inset 0 1px rgba(255,255,255,.26);
    font:inherit; font-size:20px; font-weight:850;
    transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.login-redesign-theme .login-submit:hover { filter:saturate(1.08) brightness(1.04); transform:translateY(-1px); box-shadow:0 15px 24px rgba(0,60,187,.34),inset 0 1px rgba(255,255,255,.26); }
.login-redesign-theme .login-submit:focus-visible { outline:4px solid rgba(161,239,255,.8); outline-offset:3px; }
.login-redesign-theme .login-submit:disabled { cursor:wait; opacity:.82; transform:none; }
.login-redesign-theme .login-submit svg { width:25px; height:25px; stroke-width:2.6; }
.login-redesign-theme .login-submit .loader { width:22px; height:22px; border:2px solid rgba(255,255,255,.95); border-top-color:transparent; border-radius:50%; animation:login-spin .7s linear infinite; }
.login-redesign-theme .login-submit:has(.loader:not(.hidden)) > svg { display:none; }
@keyframes login-spin { to { transform:rotate(360deg); } }
.login-redesign-theme .login-forgot { display:block; margin-top:-3px; color:#0869d7; font-size:15px; font-weight:750; text-align:center; text-decoration:none; }
.login-redesign-theme .login-forgot:hover { color:#034fb4; text-decoration:underline; }
.login-redesign-theme .login-footer { display:flex; align-items:center; flex-direction:column; margin:30px auto 0; color:#fff; text-align:center; }
.login-redesign-theme .login-footer-line { display:block; width:62px; height:3px; margin-bottom:17px; border-radius:99px; background:#35e4f6; }
.login-redesign-theme .login-footer svg { width:28px; height:28px; margin-bottom:7px; color:#fff; stroke-width:1.7; opacity:.92; }
.login-redesign-theme .login-footer p { margin:0; font-size:16px; font-weight:800; }
.login-redesign-theme .login-footer > span:not(.login-footer-line) { margin-top:3px; color:#d1f7ff; font-size:14px; }
.login-redesign-theme .login-footer small { margin-top:18px; color:rgba(218,249,255,.72); font-size:10px; font-weight:750; letter-spacing:.18em; text-transform:uppercase; }
@media (max-width:640px) {
    .login-redesign-theme .login-page { align-items:start; overflow-y:auto; padding:30px 16px 27px; }
    .login-redesign-theme .login-layout { width:min(100%,470px); }
    .login-redesign-theme .login-layout::after { top:16%; right:-59%; width:290px; height:350px; }
    .login-redesign-theme .login-brand { margin-bottom:24px; }
    .login-redesign-theme .login-brand-tile { width:87px; height:87px; margin-bottom:13px; border-radius:25px; }
    .login-redesign-theme .login-brand h1 { font-size:37px; }
    .login-redesign-theme .login-brand p { margin-top:7px; font-size:16px; }
    .login-redesign-theme .login-card { padding:30px 25px 28px; border-radius:28px; }
    .login-redesign-theme .login-card-heading { margin-bottom:23px; }
    .login-redesign-theme .login-card h2 { font-size:33px; }
    .login-redesign-theme .login-card-heading > p:last-child { margin-top:9px; font-size:14px; }
    .login-redesign-theme .login-form { gap:17px; }
    .login-redesign-theme .login-field label { margin-bottom:7px; font-size:14px; }
    .login-redesign-theme .login-field label svg { width:17px; height:17px; }
    .login-redesign-theme .login-control { min-height:59px; border-radius:16px; }
    .login-redesign-theme .login-control-icon { width:21px; height:21px; margin-left:16px; margin-right:13px; }
    html[data-theme="light"] .login-redesign-theme .login-control input#email,
    html[data-theme="light"] .login-redesign-theme .login-control input#senha { height:57px; font-size:16px; }
    .login-redesign-theme .login-remember { font-size:14px; }
    .login-redesign-theme .login-remember input { width:18px; height:18px; }
    .login-redesign-theme .login-submit { min-height:59px; border-radius:17px; font-size:18px; }
    .login-redesign-theme .login-forgot { font-size:14px; }
    .login-redesign-theme .login-footer { margin-top:24px; }
    .login-redesign-theme .login-footer small { display:none; }
}

/* These win over generic legacy authentication rules that use !important. */
html[data-theme="light"] body.login-theme.login-redesign-theme {
    background:#0754ca !important;
    color:#102e55 !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme > .login-page {
    background:linear-gradient(142deg,#063bb4 0%,#0668d7 46%,#18c7e4 100%) !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-brand {
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#fff !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-brand h1 { color:#fff !important; }
html[data-theme="light"] body.login-theme.login-redesign-theme .login-brand p { color:#b9efff !important; }
html[data-theme="light"] body.login-theme.login-redesign-theme .login-forgot {
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#0869d7 !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-footer { background:transparent !important; color:#fff !important; }
html[data-theme="light"] body.login-theme.login-redesign-theme .login-password-toggle {
    background:transparent !important;
    color:#34649a !important;
    box-shadow:none !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-password-toggle:hover,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-password-toggle:focus-visible {
    background:#edf6ff !important;
    color:#0868c9 !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-remember,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-remember span {
    letter-spacing:0 !important;
    text-transform:none !important;
}

/* Hover do menu: destaque claro e perceptivel sem alterar o item ativo. */
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover,
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):focus-visible {
    border-color:#b7dcfb !important;
    background:linear-gradient(100deg,#e5f2ff 0%,#f3f9ff 100%) !important;
    color:#075fca !important;
    box-shadow:0 7px 16px rgba(8,115,216,.12) !important;
    outline:0;
}
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover .sidebar-nav-icon,
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):focus-visible .sidebar-nav-icon {
    border-color:#b9dcfb !important;
    background:linear-gradient(145deg,#d8edff,#c5e3fc) !important;
    color:#075fca !important;
}
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):hover .sidebar-nav-chevron,
html[data-theme="light"] #appSidebar.sidebar-redesign .sidebar-nav-link:not(.sidebar-nav-link-active):focus-visible .sidebar-nav-chevron {
    color:#075fca !important;
}

/* Diretório de membros da TI. */
.ti-members-page { display:grid; gap:18px; color:#102a43; }
.ti-members-hero { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:130px; padding:26px 30px; overflow:hidden; border:1px solid #87c7f5; border-radius:16px; background:linear-gradient(115deg,#075bc4 0%,#147de8 54%,#25a9ef 100%); box-shadow:0 16px 34px rgba(18,107,193,.20); color:#fff; }
.ti-members-hero-intro { display:flex; align-items:center; gap:18px; min-width:0; }
.ti-members-hero-icon,.ti-member-form-icon { display:grid; width:68px; height:68px; flex:0 0 68px; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); color:#fff; }
.ti-members-hero-icon svg { width:35px; height:35px; stroke-width:1.75; }
.ti-members-hero h1 { margin:0; color:#fff; font-size:28px; line-height:1.15; font-weight:900; }
.ti-members-hero p { max-width:650px; margin:7px 0 0; color:rgba(255,255,255,.94); font-size:14px; line-height:1.5; font-weight:650; }
.ti-members-stats { display:grid; grid-template-columns:repeat(3,minmax(150px,1fr)); gap:12px; min-width:min(100%,560px); }
.ti-members-stat { display:flex; align-items:center; gap:12px; min-height:66px; padding:12px 15px; border:1px solid rgba(255,255,255,.44); border-radius:10px; background:rgba(255,255,255,.87); box-shadow:inset 0 1px 0 rgba(255,255,255,.6); color:#073a7a; }
.ti-members-stat > svg { width:27px; height:27px; color:#0877e8; stroke-width:2; }
.ti-members-stat:nth-child(3) > svg { color:#06a33a; }
.ti-members-stat strong { display:block; color:#092b5f; font-size:22px; line-height:1; font-weight:900; }
.ti-members-stat span { display:block; margin-top:4px; color:#234a79; font-size:11px; font-weight:750; }
.ti-members-alert { margin:0; }
.ti-members-layout { display:grid; grid-template-columns:minmax(290px,350px) minmax(0,1fr); gap:18px; align-items:start; }
.ti-members-forms { display:grid; gap:14px; }
.ti-member-form-card,.ti-members-directory { border:1px solid #c4dff4; border-radius:14px; background:#fff; box-shadow:0 10px 25px rgba(28,83,127,.08); }
.ti-member-form-card { padding:19px; }
.ti-member-form-heading { display:flex; align-items:flex-start; gap:12px; margin-bottom:17px; }
.ti-member-form-icon { width:35px; height:35px; flex-basis:35px; border-radius:10px; background:#e7f3ff; color:#0876e8; }
.ti-member-form-icon svg { width:20px; height:20px; stroke-width:2.25; }
.ti-member-form-icon-admin { background:#edf5ff; color:#1969cc; }
.ti-member-form-heading h2,.ti-members-directory-title h2 { margin:0; color:#102a43; font-size:17px; line-height:1.2; font-weight:900; }
.ti-member-form-heading p { margin:5px 0 0; color:#4c6883; font-size:12px; line-height:1.45; font-weight:600; }
.ti-member-form { display:grid; gap:12px; }
.ti-member-form label,.ti-member-edit-grid label { display:grid; gap:6px; color:#173b5d; font-size:12px; font-weight:850; }
.ti-form-control { position:relative; display:flex; align-items:center; }
.ti-form-control > svg { position:absolute; left:12px; z-index:1; width:17px; height:17px; color:#3671a5; stroke-width:2; pointer-events:none; }
.ti-form-control .app-input { width:100%; min-height:42px; padding:10px 42px 10px 39px; border:1px solid #b7d4ec; border-radius:8px; background:#fff; color:#15334e; font-size:13px; box-shadow:none; }
.ti-form-control .app-input:focus { border-color:#1684db; box-shadow:0 0 0 3px rgba(22,132,219,.14); }
.ti-password-visibility { position:absolute; right:8px; z-index:2; display:grid; width:28px; height:28px; place-items:center; border:0; border-radius:6px; background:transparent; color:#406487; cursor:pointer; }
.ti-password-visibility svg { width:17px; height:17px; stroke-width:2.25; }
.ti-password-visibility svg + svg { display:none; }
.ti-password-visibility.is-visible svg:first-child { display:none; }
.ti-password-visibility.is-visible svg + svg { display:block; }
.ti-member-submit { display:flex; min-height:43px; align-items:center; justify-content:center; gap:8px; margin-top:3px; border:0; border-radius:8px; background:linear-gradient(100deg,#1760e8,#11b6dc) !important; color:#fff !important; font-weight:850; box-shadow:0 9px 18px rgba(18,106,220,.22) !important; }
.ti-member-submit svg { width:18px; height:18px; stroke-width:2.1; }
.ti-members-directory { overflow:hidden; }
.ti-members-directory-tools { display:grid; grid-template-columns:minmax(240px,1fr) repeat(3,minmax(120px,165px)); gap:10px; padding:15px; border-bottom:1px solid #d7e8f6; background:#fbfdff; }
.ti-directory-search { display:flex; align-items:center; gap:10px; min-height:42px; padding:0 12px; border:1px solid #b9d6ed; border-radius:8px; background:#fff; color:#2b76b2; }
.ti-directory-search svg { width:19px; height:19px; flex:0 0 19px; stroke-width:2.4; }
.ti-directory-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:#15334e; font-size:13px; }
.ti-directory-search input::placeholder { color:#5d7892; }
.ti-directory-filter { min-width:0; min-height:42px; padding:0 30px 0 11px; border:1px solid #b9d6ed; border-radius:8px; outline:0; background:#fff; color:#173b5d; font-size:12px; font-weight:750; }
.ti-directory-filter:focus { border-color:#1684db; box-shadow:0 0 0 3px rgba(22,132,219,.14); }
.ti-members-directory-title { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 18px 8px; }
.ti-members-directory-title p { margin:4px 0 0; color:#5b7590; font-size:12px; font-weight:650; }
.ti-members-active-key,.ti-member-status { display:inline-flex; align-items:center; gap:5px; border-radius:999px; background:#ddf8e6; color:#08722e; font-size:11px; font-weight:850; }
.ti-members-active-key { padding:7px 10px; }
.ti-members-active-key svg,.ti-member-status svg { width:14px; height:14px; fill:#17b64c; color:#17b64c; stroke-width:2.25; }
.ti-member-list { display:grid; gap:12px; padding:10px 15px 18px; }
.ti-member-record { display:grid; grid-template-columns:minmax(250px,1fr) minmax(210px,1.05fr) auto; align-items:center; gap:18px; padding:17px 15px; border:1px solid #d1e6f7; border-radius:13px; background:linear-gradient(105deg,#fff,#fbfdff); box-shadow:0 7px 17px rgba(34,96,140,.06); transition:border-color .16s ease,box-shadow .16s ease; }
.ti-member-record:hover { border-color:#9bccef; box-shadow:0 11px 22px rgba(34,96,140,.10); }
.ti-member-profile { display:flex; align-items:center; gap:13px; min-width:0; }
.ti-member-avatar { position:relative; display:grid; width:58px; height:58px; flex:0 0 58px; place-items:center; border-radius:50%; background:linear-gradient(135deg,#dceeff,#f3f9ff); color:#1476da; font-size:19px; font-weight:900; }
.ti-member-avatar i { position:absolute; right:2px; bottom:3px; width:12px; height:12px; border:2px solid #fff; border-radius:50%; background:#16b94d; }
.ti-member-identity { min-width:0; }
.ti-member-identity > div { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.ti-member-identity h3 { max-width:260px; margin:0; overflow:hidden; color:#102a43; font-size:16px; line-height:1.2; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }
.ti-member-role { display:inline-flex; padding:5px 10px; border-radius:999px; background:linear-gradient(100deg,#1479ed,#21a1e6); color:#fff; font-size:11px; font-weight:850; }
.ti-member-role-admin { background:linear-gradient(100deg,#174ea6,#277cc8); }
.ti-member-identity p,.ti-member-identity small { display:flex; align-items:center; gap:6px; margin:7px 0 0; overflow:hidden; color:#365875; font-size:12px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }
.ti-member-identity small { margin-top:5px; color:#668199; font-size:11px; }
.ti-member-identity svg { width:14px; height:14px; flex:0 0 14px; color:#277dc2; stroke-width:2; }
.ti-member-topics { min-width:0; padding-left:18px; border-left:1px solid #d9e9f6; }
.ti-member-topics > span { display:block; margin-bottom:9px; color:#183c61; font-size:11px; font-weight:850; }
.ti-member-topics > div { display:flex; flex-wrap:wrap; gap:7px; }
.ti-member-topics b { display:inline-flex; align-items:center; gap:6px; max-width:100%; padding:7px 10px; border:1px solid #cce5f8; border-radius:999px; background:#eaf5ff; color:#086bd0; font-size:10px; font-weight:850; line-height:1; }
.ti-member-topics b svg { width:14px; height:14px; flex:0 0 14px; stroke-width:2.25; }
.ti-member-topics em { color:#6b8297; font-size:11px; font-style:normal; font-weight:650; }
.ti-member-controls { display:grid; justify-items:end; gap:13px; }
.ti-member-status { padding:7px 10px; }
.ti-member-controls > div { display:flex; align-items:center; gap:8px; }
.ti-member-editor,.ti-member-actions { position:relative; }
.ti-member-editor summary,.ti-member-actions summary { display:flex; align-items:center; justify-content:center; min-height:38px; border:1px solid #b8d9f1; border-radius:8px; background:#f5faff; color:#10446f; cursor:pointer; list-style:none; font-size:12px; font-weight:850; }
.ti-member-editor summary { gap:8px; padding:0 12px; }
.ti-member-actions summary { width:38px; padding:0; }
.ti-member-editor summary::-webkit-details-marker,.ti-member-actions summary::-webkit-details-marker { display:none; }
.ti-member-editor summary svg,.ti-member-actions summary svg { width:17px; height:17px; color:#0876df; stroke-width:2.3; }
.ti-member-editor summary:hover,.ti-member-actions summary:hover { border-color:#6bafe0; background:#eaf5ff; }
.ti-member-editor-panel { position:absolute; right:0; z-index:12; width:min(590px,calc(100vw - 64px)); margin-top:8px; padding:16px; border:1px solid #b7d9f2; border-radius:12px; background:#fff; box-shadow:0 17px 35px rgba(28,83,127,.18); }
.ti-member-edit-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.ti-member-editor-panel .app-input { width:100%; min-height:40px; border:1px solid #b8d5ec; border-radius:8px; background:#fff; color:#15334e; }
.ti-member-actions > div { position:absolute; right:0; z-index:13; display:grid; gap:9px; width:235px; margin-top:8px; padding:11px; border:1px solid #b7d9f2; border-radius:12px; background:#fff; box-shadow:0 17px 35px rgba(28,83,127,.18); }
.ti-member-actions form { display:grid; gap:7px; }
.ti-member-actions .app-input { min-height:38px; border:1px solid #b8d5ec; border-radius:8px; background:#fff; color:#15334e; }
.ti-member-actions .app-btn { justify-content:center; border-radius:8px; font-size:11px; }
.ti-members-empty { display:grid; justify-items:center; gap:7px; padding:44px 20px; border:1px dashed #a9d0ec; border-radius:12px; background:#f8fcff; text-align:center; }
.ti-members-empty > span { display:grid; width:48px; height:48px; place-items:center; border-radius:50%; background:#e4f2ff; color:#1978cc; }
.ti-members-empty svg { width:24px; height:24px; }
.ti-members-empty strong { color:#173b5d; font-size:14px; }
.ti-members-empty p { margin:0; color:#668199; font-size:12px; }
@media (max-width:1250px) { .ti-members-hero { align-items:flex-start; flex-direction:column; } .ti-members-stats { width:100%; max-width:none; } .ti-member-record { grid-template-columns:minmax(220px,1fr) minmax(190px,1fr); } .ti-member-controls { grid-column:1 / -1; grid-auto-flow:column; justify-content:space-between; align-items:center; } }
@media (max-width:980px) { .ti-members-layout { grid-template-columns:1fr; } .ti-members-forms { grid-template-columns:repeat(2,minmax(0,1fr)); } .ti-members-directory-tools { grid-template-columns:minmax(220px,1fr) repeat(2,minmax(130px,1fr)); } .ti-directory-filter:last-child { grid-column:2; } }
@media (max-width:680px) { .ti-members-hero { padding:20px; border-radius:13px; } .ti-members-hero-intro { align-items:flex-start; } .ti-members-hero-icon { width:50px; height:50px; flex-basis:50px; } .ti-members-hero-icon svg { width:27px; height:27px; } .ti-members-hero h1 { font-size:23px; } .ti-members-stats,.ti-members-forms,.ti-members-directory-tools { grid-template-columns:1fr; } .ti-members-stat { min-height:58px; } .ti-directory-filter:last-child { grid-column:auto; } .ti-member-record { grid-template-columns:1fr; gap:14px; padding:15px; } .ti-member-topics { padding:0; border-left:0; } .ti-member-controls { grid-column:auto; grid-auto-flow:row; justify-items:stretch; } .ti-member-controls > div { justify-content:space-between; } .ti-member-editor { flex:1; } .ti-member-editor summary { width:100%; } .ti-member-editor-panel { right:auto; left:0; width:calc(100vw - 62px); } .ti-member-edit-grid { grid-template-columns:1fr; } }
html[data-theme="light"] .app-main .ti-members-hero h1#ti-members-title { color:#ffffff !important; }

/* Cadastro: mantém um único contorno por campo e ocupa toda a largura disponível. */
/* Overrides finais de densidade dos detalhes do ticket (após as regras legadas). */
/* O corpo de especificações começa depois do cabeçalho azul, como no primeiro card. */
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) {
    background:#f8fcff !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid {
    margin-top:70px !important;
    padding-top:0 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid { gap:16px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 { gap:16px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(-n+2) { padding:0 12px 12px !important; border-radius:14px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child {
    min-height:76px !important; margin:0 -12px 10px !important; padding:11px 160px 10px 76px !important;
    background:radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::after { left:16px !important; top:14px !important; width:48px !important; height:48px !important; border-radius:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { font-size:19px !important; line-height:1.1 !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-57px !important; width:25px !important; height:25px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child p,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-top:3px !important; font-size:10px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after { right:14px !important; top:15px !important; width:132px !important; min-height:42px !important; padding-right:39px !important; background-size:31px 31px !important; font-size:8px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) { gap:8px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:74px !important; padding:11px 10px 9px 64px !important; border-radius:10px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::before { left:10px !important; top:10px !important; width:43px !important; height:43px !important; border-radius:10px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div::after,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div::after { left:21px !important; top:21px !important; width:21px !important; height:21px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:first-child,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:first-child { font-size:9px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:not(:first-child),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div p:not(:first-child) { margin-top:3px !important; font-size:14px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div p:last-child:not(:nth-child(2)) { font-size:11px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(5),
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div:nth-child(6) { min-height:62px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) { padding-top:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2)::before { height:76px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:67px !important; padding-top:2px; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2::before { left:-51px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:67px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type::after { top:-26px !important; width:220px !important; min-height:40px !important; padding:7px 8px 7px 36px !important; border-radius:10px !important; font-size:8px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid { gap:8px !important; margin-top:12px !important; }
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:62px !important; padding-top:14px !important; }
html[data-theme="light"] .app-main .ticket-side-card-header { min-height:76px !important; padding:11px 13px !important; gap:10px !important; background:radial-gradient(ellipse 78% 150% at 105% -35%,rgba(255,255,255,.18) 0 45%,transparent 45.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important; color:#fff !important; }
html[data-theme="light"] .app-main .ticket-side-card-heading-icon { width:42px !important; height:42px !important; flex-basis:42px !important; border-radius:10px !important; }
html[data-theme="light"] .app-main .ticket-side-card-heading-icon svg { width:23px !important; height:23px !important; }
html[data-theme="light"] .app-main .ticket-side-card-header h2 { font-size:18px !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }
html[data-theme="light"] .app-main .ticket-side-card-header p { margin-top:3px !important; font-size:10px !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }
html[data-theme="light"] .ticket-summary-card-body { padding:11px 13px 13px !important; }
html[data-theme="light"] .ticket-summary-assignee { gap:7px !important; padding-bottom:10px !important; font-size:12px !important; }
html[data-theme="light"] .ticket-summary-assignee strong { max-width:110px; font-size:12px !important; }
html[data-theme="light"] .ticket-summary-next-action { gap:8px !important; margin-top:10px !important; padding:9px !important; border-radius:10px !important; }
html[data-theme="light"] .ticket-summary-next-action-icon { width:36px !important; height:36px !important; flex-basis:36px !important; }
html[data-theme="light"] .ticket-summary-next-action-icon svg { width:21px !important; height:21px !important; }
html[data-theme="light"] .ticket-summary-next-action p { font-size:8px !important; }
html[data-theme="light"] .ticket-summary-next-action strong { font-size:10px !important; }
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child { min-height:82px !important; padding-left:68px !important; padding-right:12px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child::after { display:none; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div,
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > div.grid > div { min-height:68px !important; padding-left:60px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > h2 { margin-left:60px !important; }
    html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(2) > p:first-of-type { margin-left:60px !important; }
}

/* Cabeçalho real: impede qualquer sobreposição entre o azul e os cards brancos. */
html[data-theme="light"] .ticket-detail-page .ticket-specifications-card {
    padding:0 12px 12px !important;
    border-radius:14px !important;
    background:#f8fcff !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-specifications-card::before,
html[data-theme="light"] .ticket-detail-page .ticket-specifications-card::after {
    display:none !important;
    content:none !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-specifications-header {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:76px;
    margin:0 -12px 12px;
    padding:11px 166px 10px 16px;
    overflow:hidden;
    border-radius:14px 14px 0 0;
    background:radial-gradient(ellipse 62% 145% at 67% -28%,rgba(255,255,255,.17) 0 43%,transparent 43.4%),linear-gradient(116deg,#075acd 0%,#087deb 57%,#32aef1 100%) !important;
    color:#fff;
}
html[data-theme="light"] .ticket-specifications-heading-icon {
    display:grid;
    width:48px;
    height:48px;
    flex:0 0 48px;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(145deg,rgba(112,198,255,.38),rgba(91,162,241,.23));
    color:#fff;
}
html[data-theme="light"] .ticket-specifications-heading-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
html[data-theme="light"] .ticket-specifications-heading-copy { min-width:0; }
html[data-theme="light"] .ticket-specifications-heading-copy h2 { margin:0 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; font-size:19px !important; font-weight:850; line-height:1.1; }
html[data-theme="light"] .ticket-specifications-heading-copy p { margin:3px 0 0 !important; color:rgba(255,255,255,.96) !important; -webkit-text-fill-color:rgba(255,255,255,.96) !important; font-size:10px !important; font-weight:600; line-height:1.3; }
html[data-theme="light"] .ticket-specifications-note {
    position:absolute;
    right:14px;
    top:50%;
    width:220px;
    padding:7px 9px;
    border-radius:10px;
    background:rgba(0,91,213,.35);
    color:#fff;
    font-size:8px;
    font-weight:650;
    line-height:1.35;
    transform:translateY(-50%);
}
html[data-theme="light"] .ticket-detail-page .ticket-specifications-card > div.grid {
    position:relative;
    z-index:1;
    margin-top:0 !important;
    padding-top:0 !important;
}
/* Isola o segundo card das regras legadas baseadas em nth-child.
   Sem isto, os pseudo-elementos antigos ainda cobriam o cabeçalho real. */
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2) {
    padding:0 12px 12px !important;
    overflow:visible !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2)::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2)::after {
    display:none !important;
    content:none !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2) > .ticket-specifications-header {
    position:relative !important;
    z-index:2 !important;
    display:flex !important;
    min-height:76px !important;
    height:auto !important;
    margin:0 -12px 12px !important;
    padding:11px 166px 10px 16px !important;
    overflow:hidden !important;
    visibility:visible !important;
    opacity:1 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2) .ticket-specifications-heading-copy h2 {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2) .ticket-specifications-heading-copy p {
    color:rgba(255,255,255,.96) !important;
    -webkit-text-fill-color:rgba(255,255,255,.96) !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card.ticket-specifications-card:nth-child(2) > div.grid {
    position:relative !important;
    z-index:1 !important;
    margin-top:0 !important;
    padding-top:0 !important;
}
/* Painel lateral: evita que regras legadas reduzam os cards a apenas uma faixa azul. */
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar {
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-summary-card,
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-ti-actions-card {
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:hidden !important;
    visibility:visible !important;
    opacity:1 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-summary-card > .ticket-side-card-header,
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-ti-actions-card > .ticket-side-card-header {
    position:relative !important;
    display:flex !important;
    height:auto !important;
    min-height:76px !important;
    max-height:none !important;
    overflow:hidden !important;
    visibility:visible !important;
    opacity:1 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-summary-card > .ticket-summary-card-body,
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar > .ticket-ti-actions-card > .ticket-ti-actions-form {
    display:grid !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    visibility:visible !important;
    opacity:1 !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar .ticket-side-card-header h2,
html[data-theme="light"] .ticket-detail-page > .grid > .ticket-detail-sidebar .ticket-side-card-header p {
    visibility:visible !important;
    opacity:1 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
}

/* Ícones dos cabeçalhos do ticket: SVGs reais, sem máscaras que podiam cortar o desenho. */
html[data-theme="light"] .ticket-detail-page .ticket-data-heading-icon {
    position:absolute;
    z-index:2;
    left:16px;
    top:50%;
    display:grid;
    width:48px;
    height:48px;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(145deg,rgba(112,198,255,.38),rgba(91,162,241,.23));
    color:#fff;
    transform:translateY(-50%);
}
html[data-theme="light"] .ticket-detail-page .ticket-data-heading-icon svg,
html[data-theme="light"] .ticket-detail-page .ticket-specifications-heading-icon svg {
    display:block;
    width:25px;
    height:25px;
    overflow:visible;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.9;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:first-child h2::before {
    display:none !important;
    content:none !important;
}
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-page .ticket-data-heading-icon {
        left:12px;
        width:44px;
        height:44px;
    }
    html[data-theme="light"] .ticket-detail-page .ticket-data-heading-icon svg,
    html[data-theme="light"] .ticket-detail-page .ticket-specifications-heading-icon svg {
        width:23px;
        height:23px;
    }
}
@media (max-width:640px) {
    html[data-theme="light"] .ticket-detail-page .ticket-specifications-header { min-height:82px; margin-bottom:10px; padding:12px 12px 10px; }
    html[data-theme="light"] .ticket-specifications-heading-icon { width:44px; height:44px; flex-basis:44px; }
    html[data-theme="light"] .ticket-specifications-note { display:none; }
}

/* Ícone dos campos adicionados ao card de dados do chamado. */
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div.ticket-specification-field {
    min-height:74px !important;
    padding:11px 10px 9px 64px !important;
}
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div.ticket-specification-field::before,
html[data-theme="light"] .ticket-detail-page > .grid > section.space-y-3 > .app-card:nth-child(1) > div:nth-child(2) > div.ticket-specification-field::after {
    display:none !important;
    content:none !important;
    background:none !important;
    -webkit-mask:none !important;
    mask:none !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-specification-field-icon {
    position:absolute;
    top:10px;
    left:10px;
    display:block;
    width:43px;
    height:43px;
    border-radius:10px;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230967db' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h8M8 17h6'/%3E%3C/svg%3E") center / 21px 21px no-repeat,linear-gradient(145deg,#eaf5ff,#e3f1ff) !important;
}

/* Cabeçalho neutro do chat no detalhe do chamado. */
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex {
    background:#ffffff !important;
    border-color:#d7e1ec !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex h2 {
    color:#0b213d !important;
    font-weight:900 !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex p {
    color:#334b68 !important;
    font-weight:800 !important;
}
html[data-theme="light"] .ticket-detail-page .ticket-chat-card > .flex span {
    background:#f3f6fa !important;
    border-color:#d7e1ec !important;
    color:#0b213d !important;
    font-weight:800 !important;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > select {
    box-sizing:border-box;
    flex:1 1 auto;
    width:100%;
    min-width:0;
    height:66px;
    margin:0;
    padding:0 18px;
    border:0 !important;
    border-radius:inherit;
    outline:0;
    appearance:none;
    background:transparent !important;
    background-color:transparent !important;
    color:#102e55 !important;
    -webkit-text-fill-color:#102e55 !important;
    caret-color:#0873d8;
    box-shadow:none !important;
    font:inherit;
    font-size:18px;
    font-weight:600;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input::placeholder {
    color:#6d879e !important;
    -webkit-text-fill-color:#6d879e !important;
    opacity:1;
}
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > input:focus,
html[data-theme="light"] body.login-theme.login-redesign-theme .login-control > select:focus {
    border:0 !important;
    outline:0;
    box-shadow:none !important;
}
