:root { --green: #004b43; --green2: #087f5b; --blue: #2f6fd5; --purple: #7047b8; --orange: #c27b00; --red: #d83a3a; --bg: #f4f6f8; --line: #dfe5e8; --text: #182230; --muted: #667085; }

* { box-sizing: border-box; }

body { margin: 0px; background: var(--bg); font-family: Arial, Helvetica, sans-serif; color: var(--text); font-size: 13px; }

button, input, select, textarea { font: inherit; }

button { cursor: pointer; }

.app { display: grid; grid-template-columns: 205px 1fr; min-height: 100vh; }

.sidebar { background: linear-gradient(rgb(0, 75, 67), rgb(0, 58, 53)); color: rgb(255, 255, 255); padding: 16px 9px; position: sticky; top: 0px; height: 100vh; }

.brand { text-align: center; margin-bottom: 18px; }

.brand img { width: 110px; height: 92px; object-fit: contain; }

.brand strong { display: block; line-height: 1.25; margin-top: 3px; }

.nav { width: 100%; border: 0px; background: transparent; color: rgb(255, 255, 255); text-align: left; padding: 11px 10px; border-radius: 7px; margin: 3px 0px; font-weight: 700; }

.nav:hover { background: rgb(11, 121, 100); }

.sidebar small { opacity: 0.85; font-size: 10px; }

.main { padding: 0px 18px 26px; min-width: 0px; }

.topbar { margin: 0px -18px 14px; padding: 15px 24px; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(215, 224, 227); display: flex; align-items: center; justify-content: space-between; gap: 12px; }

.topbar h1 { margin: 0px; color: rgb(0, 63, 56); font-size: 25px; }

.topbar h2 { margin: 4px 0px 0px; font-size: 14px; font-weight: 500; }

.top-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

.top-actions select, .top-actions button { padding: 8px 10px; border: 1px solid rgb(203, 213, 218); border-radius: 6px; background: rgb(255, 255, 255); }

.cards { display: grid; grid-template-columns: repeat(9, 1fr); gap: 13px; }

.card { background: rgb(255, 255, 255); border: 1px solid rgb(223, 230, 234); border-radius: 8px; padding: 13px 15px; min-height: 82px; }

.card span { font-size: 11px; font-weight: 800; }

.card b { display: block; font-size: 24px; margin: 6px 0px 2px; }

.card small { color: var(--muted); }

.workspace { display: grid; grid-template-columns: minmax(650px, 1.2fr) minmax(430px, 0.8fr); align-items: start; margin-top: 12px; }

.panel { background: rgb(255, 255, 255); border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }

.detail-summary { padding: 12px 14px; border-bottom: 1px solid var(--line); }

.detail-summary h3 { margin: 0px 0px 9px; font-size: 16px; }

.summary-grid { display: grid; grid-template-columns: 150px 1fr 150px 1fr; }

.summary-grid div { padding: 5px 3px; border-bottom: 1px solid rgb(238, 241, 243); }

.summary-grid .label { font-weight: 800; font-size: 11px; }

.section { margin: 10px; border: 1px solid rgb(214, 225, 221); border-radius: 6px; overflow: hidden; }

.section-title { background: rgb(242, 247, 245); color: rgb(6, 99, 79); font-weight: 800; padding: 8px 10px; }

.section-body { padding: 9px 11px; }

.field-row { display: grid; grid-template-columns: 190px 1fr; gap: 10px; align-items: start; margin: 7px 0px; }

.field-row > label { font-size: 11px; font-weight: 800; padding-top: 8px; }

input, select, textarea { width: 100%; border: 1px solid rgb(203, 212, 217); border-radius: 5px; padding: 8px; background: rgb(255, 255, 255); }

textarea { resize: vertical; min-height: 70px; }

textarea.large { min-height: 170px; }

textarea.medium { min-height: 105px; }

.actions { flex-wrap: wrap; padding: 10px; border-top: 1px solid rgb(231, 235, 238); }

.btn { border: 0px; border-radius: 5px; padding: 8px 11px; color: rgb(255, 255, 255); font-weight: 800; }

.btn.green { background: rgb(7, 142, 83); }

.btn.blue { background: rgb(47, 111, 213); }

.btn.gray { background: rgb(238, 242, 241); }

.btn.red { background: rgb(216, 58, 58); }

.btn.purple { background: rgb(112, 71, 184); }

.btn.orange { background: rgb(194, 123, 0); }

.help { display: inline-flex; width: 16px; height: 16px; border-radius: 50%; align-items: center; justify-content: center; background: rgb(234, 242, 255); color: rgb(36, 95, 168); font-size: 10px; margin-left: 5px; position: relative; cursor: help; }

.help:hover::after { content: attr(data-tip); position: absolute; left: 21px; top: -8px; width: 285px; background: rgb(23, 59, 53); color: rgb(255, 255, 255); padding: 9px; border-radius: 6px; font-size: 11px; line-height: 1.4; font-weight: 500; z-index: 100; box-shadow: rgba(0, 0, 0, 0.267) 0px 4px 15px; }

.legal-banner { margin: 0px 0px 10px; padding: 10px; border-radius: 6px; font-weight: 800; }

.pending { background: rgb(255, 244, 206); color: rgb(125, 91, 0); border: 1px solid rgb(238, 215, 140); }

.approved { background: rgb(232, 247, 238); color: rgb(20, 111, 64); border: 1px solid rgb(189, 223, 200); }

.reservation { background: rgb(234, 242, 255); color: rgb(37, 92, 166); border: 1px solid rgb(191, 209, 239); }

.rejected { background: rgb(255, 232, 232); color: rgb(165, 38, 38); border: 1px solid rgb(239, 188, 188); }

.badge { display: inline-block; padding: 4px 7px; border-radius: 5px; font-size: 10px; font-weight: 800; border: 1px solid transparent; }

.release { display: inline-block; padding: 5px 7px; border-radius: 5px; font-size: 10px; font-weight: 800; }

.release.yes { background: rgb(232, 247, 238); color: rgb(20, 111, 64); }

.release.no { background: rgb(255, 232, 232); color: rgb(165, 38, 38); }

.dead { display: inline-block; padding: 4px 7px; border-radius: 5px; font-weight: 800; font-size: 10px; }

.dead.g { background: rgb(232, 247, 238); color: rgb(20, 111, 64); }

.dead.y { background: rgb(255, 244, 206); color: rgb(125, 91, 0); }

.dead.r { background: rgb(255, 232, 232); color: rgb(165, 38, 38); }

.dead.x { background: rgb(236, 239, 241); color: rgb(95, 99, 104); }

.timeline { margin: 10px; border: 1px solid rgb(221, 229, 226); border-radius: 6px; overflow: hidden; }

.timeline-title { background: rgb(247, 250, 249); color: rgb(7, 91, 74); font-weight: 800; padding: 8px 10px; }

.timeline-list { padding: 8px 12px; max-height: 180px; overflow: auto; }

.timeline-item { border-left: 2px solid rgb(184, 212, 203); padding: 7px 8px 7px 17px; margin-left: 5px; position: relative; }

.timeline-item::before { content: ""; position: absolute; left: -5px; top: 12px; width: 8px; height: 8px; border-radius: 50%; background: rgb(8, 127, 91); }

.timeline-item small { color: rgb(104, 114, 122); }

.preview-panel { position: sticky; top: 8px; }

.preview-head { padding: 11px 12px; border-bottom: 1px solid var(--line); font-weight: 800; }

.preview-actions { display: flex; gap: 8px; padding: 10px 12px; }

.viewer { background: rgb(51, 51, 51); border-radius: 6px; overflow: visible; margin: 0px 10px 10px; }

.viewer-bar { background: rgb(41, 41, 41); color: rgb(255, 255, 255); padding: 9px 12px; display: flex; justify-content: space-between; font-size: 11px; }

.viewer-body { background: rgb(229, 229, 229); padding: 10px; height: calc(-240px + 100vh); min-height: 610px; overflow: auto; }

.paper { background: rgb(255, 255, 255); overflow: hidden; margin: 0px auto; padding: 14mm 16mm; display: flex; flex-direction: column; font-family: Georgia, serif; font-size: 10.5pt; line-height: 1.45; box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 8px; }

.paper-content { flex: 1 1 0%; }

.paper-head { border-bottom: 3px solid rgb(11, 107, 87); padding-bottom: 7px; }

.paper-head img { width: 24mm; height: 20mm; object-fit: contain; }

.paper-head div { flex: 1 1 0%; text-align: center; font-family: Arial, sans-serif; padding-right: 24mm; }

.paper-head b { display: block; color: rgb(0, 63, 56); font-size: 14pt; }

.paper-head span { font-size: 9.5pt; }

.paper h2 { text-align: center; font: 700 11.5pt Arial; margin: 6mm 0px 4mm; }

.meta { border: 1.5px solid rgb(11, 107, 87); background: rgb(244, 250, 247); font-size: 9.5pt; }

.meta-row { grid-template-columns: 43mm 1fr; border-bottom: 1px solid rgb(155, 196, 184); }

.meta-row:last-child { border: 0px; }

.meta-row b, .meta-row span { padding: 2.2mm 2.4mm; }

.paper h3 { font-size: 10pt; margin: 4.5mm 0px 1.5mm; }

.paper p { margin: 1.5mm 0px; text-align: justify; }

.legal-note { margin-top: 5mm; padding: 3mm; border: 1.5px solid rgb(11, 107, 87); background: rgb(244, 250, 247); font: 9.5pt / 1.4 Arial; }

.foot { border-top: 3px solid rgb(11, 107, 87); margin-top: auto; padding-top: 2mm; font-style: normal; font-variant: normal; font-size-adjust: none; font-language-override: normal; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-weight: normal; font-stretch: normal; font-size: 8pt; font-family: Arial; }

.list-panel { margin-top: 12px; }

.list-head { padding: 10px 12px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; gap: 10px; align-items: center; }

.filters { display: flex; gap: 8px; flex-wrap: wrap; }

.filters input, .filters select { width: auto; }

.legend { display: flex; gap: 7px; flex-wrap: wrap; padding: 8px 12px; border-bottom: 1px solid rgb(237, 240, 242); }

.tablewrap { overflow: auto; max-height: 370px; }

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

th, td { padding: 8px; border-bottom: 1px solid rgb(231, 235, 238); text-align: left; vertical-align: middle; }

th { background: rgb(250, 251, 252); position: sticky; top: 0px; }

.modal { position: fixed; inset: 0px; background: rgba(0, 0, 0, 0.533); display: none; align-items: center; justify-content: center; padding: 20px; z-index: 200; }

.modal.show { display: flex; }

.modal-box { background: rgb(255, 255, 255); width: min(920px, 96vw); max-height: 92vh; overflow: auto; border-radius: 9px; }

.modal-head { padding: 14px 16px; border-bottom: 1px solid rgb(225, 230, 233); display: flex; justify-content: space-between; }

.modal-body { padding: 16px; }

.modal-foot { padding: 12px 16px; border-top: 1px solid rgb(225, 230, 233); display: flex; justify-content: flex-end; gap: 8px; }

.formgrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 11px; }

.span2 { grid-column: span 2; }

.span4 { grid-column: 1 / -1; }

.color-row { display: flex; align-items: center; gap: 8px; }

.color-row input[type="color"] { width: 45px; height: 34px; padding: 2px; }

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

.preview-panel { position: static; }

.viewer-body { height: 650px; }

.cards { grid-template-columns: repeat(3, 1fr); }
}

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

.sidebar { height: auto; position: static; }

.brand, .sidebar small { display: none; }

.nav { display: inline-block; width: auto; }

.cards { grid-template-columns: repeat(2, 1fr); }

.summary-grid { grid-template-columns: 135px 1fr; }

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

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

.span4 { grid-column: span 2; }
}

@media print {
html, body { margin: 0px !important; padding: 0px !important; background: rgb(255, 255, 255) !important; overflow: hidden !important; }

#printArea { margin: 0px !important; padding: 0px !important; overflow: hidden !important; }

#printArea .paper { margin: 0px !important; padding: 14mm 16mm !important; overflow: hidden !important; }

#printArea .paper-content, #printArea .paper-head, #printArea .meta, #printArea .legal-note, #printArea .foot { break-inside: avoid !important; }

@page { size: a4; margin: 0px; }
}

.councilor-box { margin: 10px; border: 1px solid rgb(216, 224, 232); border-radius: 6px; overflow: hidden; }

.councilor-title { background: rgb(242, 246, 251); color: rgb(43, 93, 152); font-weight: 800; padding: 8px 10px; }

.flow-banner { margin: 0px 0px 10px; padding: 10px; border-radius: 6px; font-weight: 800; }

.flow-wait-send { background: rgb(255, 244, 206); color: rgb(125, 91, 0); border: 1px solid rgb(238, 215, 140); }

.flow-wait-return { background: rgb(234, 242, 255); color: rgb(37, 92, 166); border: 1px solid rgb(191, 209, 239); }

.flow-protocol { background: rgb(232, 247, 238); color: rgb(20, 111, 64); border: 1px solid rgb(189, 223, 200); }

.flow-discard { background: rgb(240, 241, 243); color: rgb(85, 93, 102); border: 1px solid rgb(215, 219, 224); }

.follow-panel { margin-top: 12px; }

.follow-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid var(--line); }

.follow-head h3 { margin: 0px; font-size: 14px; }

.follow-table td, .follow-table th { font-size: 11px; }

.wait-days { font-weight: 800; }

.workflow-step { border: 1px solid rgb(220, 227, 231); border-radius: 7px; padding: 8px 9px; background: rgb(247, 249, 250); color: rgb(103, 114, 124); font-size: 10px; font-weight: 800; position: relative; }

.workflow-step.done { background: rgb(237, 248, 242); border-color: rgb(185, 223, 200); color: rgb(23, 109, 66); }

.workflow-step.active { background: rgb(234, 242, 255); border-color: rgb(169, 196, 238); color: rgb(35, 93, 168); box-shadow: rgb(169, 196, 238) 0px 0px 0px 1px inset; }

.workflow-step.locked { opacity: 0.55; }

.workflow-step .num { display: inline-flex; width: 20px; height: 20px; border-radius: 50%; align-items: center; justify-content: center; background: rgb(223, 229, 232); margin-right: 5px; }

.workflow-step.done .num { background: rgb(22, 132, 81); color: rgb(255, 255, 255); }

.workflow-step.active .num { background: rgb(47, 111, 213); color: rgb(255, 255, 255); }

.stage-intro { margin: 10px; padding: 12px; border: 1px dashed rgb(185, 201, 195); border-radius: 7px; background: rgb(251, 253, 252); }

.stage-intro h3 { margin: 0px 0px 5px; color: rgb(7, 91, 74); font-size: 14px; }

.stage-intro p { margin: 0px 0px 9px; color: rgb(102, 112, 133); }

.section.current-stage { box-shadow: rgb(183, 209, 243) 0px 0px 0px 2px; }

.section.completed-stage .section-title { background: rgb(237, 248, 242); color: rgb(23, 109, 66); }

.stage-locked-note { margin: 10px; padding: 10px; border-radius: 6px; background: rgb(245, 246, 247); color: rgb(102, 112, 133); border: 1px solid rgb(225, 229, 232); }

#preview { display: inline-block; vertical-align: top; zoom: var(--preview-zoom,.77); width: 210mm; margin: 0px auto; text-align: left; }

#preview .paper { overflow: hidden !important; margin: 0px !important; }

.zoom-help { font-size: 10px; color: rgb(215, 221, 226); }

.zoom-value { font-weight: 800; color: rgb(255, 255, 255); }

.sapl-chip { display: inline-block; padding: 5px 8px; border-radius: 5px; font-size: 10px; font-weight: 800; background: rgb(238, 248, 243); color: rgb(20, 111, 64); }

.nav span[id^="count_"] { display: inline-block; min-width: 20px; text-align: center; background: rgba(255, 255, 255, 0.15); border-radius: 10px; padding: 1px 6px; font-size: 10px; }

.queue-state { font-weight: 800; font-size: 10px; padding: 4px 7px; border-radius: 5px; display: inline-block; }

.locked-stage .section-title { background: rgb(237, 248, 242) !important; color: rgb(23, 109, 66) !important; }

.locked-stage input:disabled, .locked-stage select:disabled, .locked-stage textarea:disabled { cursor: not-allowed; background: rgb(244, 246, 247) !important; color: rgb(89, 99, 108) !important; border-color: rgb(223, 228, 231) !important; }

.locked-info { margin: 0px 0px 10px; padding: 9px 10px; border-radius: 6px; background: rgb(237, 248, 242); border: 1px solid rgb(189, 223, 200); color: rgb(23, 109, 66); font-size: 11px; font-weight: 800; }

.correction-stage .section-title { background: rgb(255, 247, 232) !important; color: rgb(149, 97, 0) !important; }

.correction-info { margin: 0px 0px 10px; padding: 10px; border-radius: 6px; background: rgb(255, 247, 232); border: 1px solid rgb(239, 212, 154); color: rgb(131, 91, 0); font-size: 11px; font-weight: 800; }

.version-chip { display: inline-block; padding: 4px 7px; border-radius: 5px; background: rgb(241, 236, 255); color: rgb(104, 66, 168); font-size: 10px; font-weight: 800; }

.version-list { margin: 10px; border: 1px solid rgb(227, 229, 232); border-radius: 6px; overflow: hidden; }

.nav-group-title { font-size: 9px; font-weight: 800; padding: 13px 10px 4px; }

.card.clickable { cursor: pointer; transition: 0.15s; }

.card.clickable:hover { transform: translateY(-2px); box-shadow: rgba(0, 0, 0, 0.067) 0px 5px 14px; border-color: rgb(184, 200, 194); }

.attention-panel { margin-top: 12px; }

.attention-head { padding: 10px 12px; border-bottom: 1px solid var(--line); font-weight: 800; color: rgb(139, 94, 0); background: rgb(255, 250, 240); }

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

.attention-item { border: 1px solid rgb(234, 220, 181); border-radius: 7px; padding: 10px; background: rgb(255, 253, 248); }

.attention-item b { display: block; font-size: 20px; color: rgb(139, 94, 0); margin-bottom: 3px; }

.all-demands-page { display: none; margin-top: 12px; }

.all-demands-page.show { display: block; }

.all-demands-toolbar { padding: 12px; border-bottom: 1px solid var(--line); display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }

.all-demands-toolbar input, .all-demands-toolbar select { width: auto; }

.all-demands-title { padding: 12px 14px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; }

.all-demands-title h3 { margin: 0px; color: rgb(7, 91, 74); }

.main-dashboard.hidden { display: none; }

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

.all-demands-toolbar input, .all-demands-toolbar select { width: 100%; }
}

.workflow-badge { display: inline-block; padding: 5px 8px; border-radius: 6px; font-size: 10px; font-weight: 800; border: 1px solid transparent; white-space: nowrap; }

.demand-tabs { margin: 10px; border: 1px solid rgb(220, 227, 230); border-radius: 8px; overflow: hidden; background: rgb(255, 255, 255); }

.demand-tab { border-bottom: 1px solid rgb(230, 234, 237); }

.demand-tab:last-child { border-bottom: 0px; }

.demand-tab-head { width: 100%; border: 0px; background: rgb(247, 249, 250); padding: 10px 12px; display: flex; justify-content: space-between; align-items: center; text-align: left; color: rgb(52, 64, 84); font-weight: 800; }

.demand-tab-head:hover:not(:disabled) { background: rgb(237, 244, 242); }

.demand-tab-head.open { background: rgb(234, 244, 241); color: rgb(7, 91, 74); }

.demand-tab-head:disabled { cursor: not-allowed; opacity: 0.5; }

.demand-tab-head .tab-left { display: flex; align-items: center; gap: 8px; }

.demand-tab-num { width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgb(223, 230, 232); color: rgb(77, 89, 98); font-size: 11px; }

.demand-tab-head.open .demand-tab-num { background: rgb(8, 127, 91); color: rgb(255, 255, 255); }

.demand-tab-head.done .demand-tab-num { background: rgb(22, 132, 81); color: rgb(255, 255, 255); }

.demand-tab-body { padding: 12px; background: rgb(255, 255, 255); }

.demand-tab-state { font-size: 10px; color: rgb(122, 133, 142); font-weight: 600; }

.tab-locked-message { padding: 12px; border: 1px dashed rgb(204, 212, 216); border-radius: 6px; background: rgb(250, 251, 252); color: rgb(104, 114, 122); }

.tab-summary-grid { display: grid; grid-template-columns: 170px 1fr 170px 1fr; gap: 0px; }

.tab-summary-grid > div { padding: 6px 4px; border-bottom: 1px solid rgb(238, 241, 243); }

.tab-summary-grid .label { font-size: 11px; font-weight: 800; }

.protocol-box { padding: 10px; border-radius: 6px; background: rgb(244, 248, 255); border: 1px solid rgb(200, 216, 243); margin-bottom: 10px; }

.discard-box { padding: 10px; border-radius: 6px; background: rgb(255, 242, 242); border: 1px solid rgb(239, 202, 202); color: rgb(142, 43, 43); }

@media (max-width: 850px) {
.tab-summary-grid { grid-template-columns: 130px 1fr; }
}

.pdf-lock-note { margin: 10px 12px 0px; padding: 9px 10px; border-radius: 6px; background: rgb(255, 244, 206); border: 1px solid rgb(238, 215, 140); color: rgb(125, 91, 0); font-size: 11px; font-weight: 800; }

.btn:disabled { opacity: 0.48; filter: grayscale(0.35); cursor: not-allowed !important; }

.analysis-assistant { margin: 0px 0px 14px; border: 1px solid rgb(203, 217, 230); border-radius: 8px; overflow: hidden; background: rgb(248, 251, 255); }

.analysis-assistant-head { padding: 10px 12px; background: rgb(234, 243, 255); color: rgb(36, 91, 158); font-weight: 800; display: flex; justify-content: space-between; align-items: center; }

.analysis-assistant-body { padding: 12px; }

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

.assistant-grid label { font-size: 11px; font-weight: 800; }

.assistant-result { margin-top: 10px; padding: 10px; border: 1px dashed rgb(169, 189, 211); border-radius: 6px; background: rgb(255, 255, 255); color: rgb(52, 64, 84); line-height: 1.45; min-height: 70px; }

.assistant-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 10px; flex-wrap: wrap; }

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

.similar-alert { grid-column: 1 / -1; padding: 10px 12px; border-radius: 7px; background: rgb(255, 247, 232); border: 1px solid rgb(239, 212, 154); font-size: 11px; }

.similar-alert.show { display: block; }

.similar-alert b { color: rgb(104, 72, 0); }

.similar-item { margin-top: 5px; padding-top: 5px; border-top: 1px dashed rgb(228, 196, 119); }

.auto-discard-note { background: rgb(255, 241, 240); color: rgb(157, 41, 41); border: 1px solid rgb(239, 193, 189); }

.reanalysis-alert { margin: 0px 0px 12px; padding: 11px 12px; border-radius: 7px; background: rgb(255, 240, 240); border: 1px solid rgb(239, 184, 184); color: rgb(152, 45, 45); font-size: 11px; line-height: 1.45; }

.reanalysis-alert b { color: rgb(126, 31, 31); }

.sidebar { padding: 14px 10px 56px; overflow: hidden auto; }

.sidebar .brand { margin-bottom: 8px; }

.sidebar .brand img { width: 86px; height: 72px; }

.sidebar-head { padding: 0px 6px 10px; border-bottom: 1px solid rgba(255, 255, 255, 0.14); margin-bottom: 8px; }

.sidebar-head strong { display: block; font-size: 12px; letter-spacing: 0.02em; }

.sidebar-head span { display: block; font-size: 9.5px; opacity: 0.72; margin-top: 3px; }

.sidebar-summary { margin: 9px 2px 10px; padding: 9px 10px; border-radius: 8px; background: rgba(255, 255, 255, 0.08); font-size: 10px; line-height: 1.45; color: rgb(234, 247, 243); }

.sidebar-summary b { color: rgb(255, 255, 255); }

.nav-primary { width: 100%; border: 1px solid rgba(255, 255, 255, 0.28); background: rgb(255, 255, 255); color: rgb(7, 91, 74); padding: 11px 10px; border-radius: 8px; margin: 5px 0px 11px; font-weight: 900; text-align: center; box-shadow: rgba(0, 29, 24, 0.19) 0px 3px 9px; }

.nav-primary:hover { background: rgb(234, 247, 243); }

.nav-group-title { font-size: 8.5px; font-weight: 900; letter-spacing: 0.12em; opacity: 0.62; padding: 12px 9px 4px; }

.nav { position: relative; display: flex; align-items: center; gap: 8px; padding: 9px; margin: 2px 0px; font-size: 11px; }

.nav .nav-icon { width: 18px; flex: 0 0 18px; text-align: center; opacity: 0.92; }

.nav .nav-label { flex: 1 1 0%; min-width: 0px; }

.nav.active { background: rgb(255, 255, 255); color: rgb(7, 91, 74); box-shadow: rgba(0, 29, 24, 0.14) 0px 2px 7px; }

.nav.active::before { content: ""; position: absolute; left: -10px; top: 5px; bottom: 5px; width: 4px; background: rgb(125, 224, 189); border-radius: 0px 4px 4px 0px; }

.nav-badge { min-width: 23px; height: 20px; padding: 0px 6px; border-radius: 12px; background: rgba(255, 255, 255, 0.15); display: inline-flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 900; }

.nav.active .nav-badge { background: rgb(231, 244, 239); color: rgb(7, 91, 74); }

.nav-badge.warn { background: rgb(253, 176, 34); color: rgb(64, 43, 0); }

.nav-badge.danger { background: rgb(240, 68, 56); color: rgb(255, 255, 255); }

.nav-badge.ok { background: rgb(18, 183, 106); color: rgb(255, 255, 255); }

.sidebar small { position: fixed; bottom: 7px; left: 10px; width: 188px; right: auto; background: rgb(0, 58, 53); padding: 4px 5px; border-radius: 4px; font-size: 8.5px; z-index: 3; }

.institutional-header { position: relative !important; min-height: 245px !important; padding: 18px 24px 28px !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; border: 0px !important; color: rgb(255, 255, 255) !important; background: linear-gradient(rgba(0, 69, 55, 0.86) 0%, rgba(0, 76, 61, 0.78) 52%, rgba(0, 54, 46, 0.92) 100%), linear-gradient(90deg, rgba(0, 69, 55, 0.48), rgba(0, 83, 64, 0.22), rgba(0, 57, 49, 0.62)), url("../img/fachada_camara.jpg") center 42% / cover no-repeat !important; box-shadow: rgba(0, 42, 34, 0.22) 0px 2px 7px !important; }

.institutional-header::after { content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgba(0, 45, 38, 0.08), transparent 35%, transparent 65%, rgba(0, 45, 38, 0.08)); pointer-events: none; }

.institutional-center { position: relative; z-index: 1; width: 100%; max-width: 1050px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; text-shadow: rgba(0, 0, 0, 0.28) 0px 2px 7px; }

.institutional-logo { width: 112px; height: 92px; object-fit: contain; display: block; margin: 0px auto 7px; filter: drop-shadow(rgba(0, 0, 0, 0.22) 0px 2px 3px); }

.institutional-title { margin-top: 0px; font-size: 28px; font-weight: 900; letter-spacing: 0.015em; line-height: 1.12; color: rgb(255, 255, 255); }

.institutional-subtitle { margin-top: 7px; display: flex; align-items: center; justify-content: center; gap: 13px; font-size: 17px; font-weight: 500; letter-spacing: 0.025em; color: rgb(255, 255, 255); }

.institutional-subtitle span { display: block; width: 112px; height: 2px; background: rgb(19, 185, 120); border-radius: 3px; box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px; }

@media (max-width: 900px) {
.institutional-header { min-height: 205px !important; padding: 15px 14px 22px !important; }

.institutional-logo { width: 92px; height: 76px; }

.institutional-title { font-size: 22px; }

.institutional-subtitle { font-size: 14px; gap: 8px; }

.institutional-subtitle span { width: 62px; }
}

.sidebar-head { text-align: center !important; }

.sidebar-head strong { text-align: center !important; line-height: 1.28 !important; font-size: 11px !important; }

.similar-alert { grid-column: 1 / -1; margin-top: 2px; padding: 10px 12px; border-radius: 7px; background: rgb(248, 250, 252); border: 1px solid rgb(215, 222, 231); color: rgb(71, 84, 103); font-size: 11px; line-height: 1.45; display: block !important; }

.similar-alert.has-match { background: rgb(255, 247, 232); border-color: rgb(239, 198, 106); color: rgb(122, 82, 0); }

.similar-alert.strong-match { background: rgb(255, 241, 240); border-color: rgb(231, 168, 163); color: rgb(156, 43, 35); }

.similar-alert-title { font-weight: 900; margin-bottom: 4px; }

.similar-item { margin-top: 7px; padding-top: 7px; border-top: 1px dashed; }

.similar-finalizada { display: inline-block; padding: 2px 5px; margin-left: 4px; border-radius: 10px; background: rgb(232, 247, 238); color: rgb(22, 120, 75); font-size: 9px; font-weight: 900; }

.paper { position: relative; background: rgb(255, 255, 255); width: 210mm; overflow: hidden; margin: 0px auto; padding: 9mm 10mm 8mm; font-family: Arial, Helvetica, sans-serif; color: rgb(17, 17, 17); }

.paper::before { background: url("../img/logo_camara_transparente.png") center center / contain no-repeat; }

.paper-content { position: relative; z-index: 1; display: flex; flex-direction: column; }

.paper-head { padding-bottom: 2.5mm; border-bottom: 1.4mm solid rgb(6, 77, 67); }

.paper-head::after { background: rgb(253, 176, 34); }

.paper-title-wrap { flex: 1 1 0%; }

.paper-title-main { font-size: 20pt; font-weight: 900; letter-spacing: 0.01em; }

.paper-title-sub { font-size: 13pt; font-weight: 600; margin-top: 2mm; }

.paper-doc-title { text-align: center; font-size: 14pt; font-weight: 900; margin: 6mm 0px 3mm; }

.meta { border: 1px solid rgb(154, 161, 165); border-radius: 1mm; overflow: hidden; font-size: 9.3pt; background: rgb(255, 255, 255); }

.meta-row { grid-template-columns: 51mm 1fr; border-bottom: 1px solid rgb(200, 205, 208); }

.meta-row:last-child { border-bottom: 0px; }

.meta-row b, .meta-row span { padding: 2mm 2.5mm; }

.meta-row b { border-right: 1px solid rgb(200, 205, 208); }

.parecer-section { border: 1px solid rgb(135, 168, 153); border-radius: 1.2mm; margin-top: 3.2mm; overflow: hidden; background: rgba(255, 255, 255, 0.94); }

.parecer-section-title { padding: 2mm 2.6mm; background: linear-gradient(90deg, rgb(239, 245, 241), rgb(247, 250, 248)); border-bottom: 1px solid rgb(179, 201, 191); font-size: 10.8pt; font-weight: 900; }

.parecer-section-body { padding: 2.8mm 3mm; font-size: 9.2pt; line-height: 1.34; }

.parecer-section.compact .parecer-section-body { min-height: 10mm; }

.conclusao-box { border: 1px solid rgb(135, 168, 153); border-radius: 1.2mm; margin-top: 3.2mm; overflow: hidden; background: rgba(255, 255, 255, 0.94); }

.conclusao-title { padding: 2mm 2.6mm; background: linear-gradient(90deg, rgb(239, 245, 241), rgb(247, 250, 248)); border-bottom: 1px solid rgb(179, 201, 191); font-size: 10.8pt; font-weight: 900; }

.conclusao-body { padding: 3mm 3.5mm; font-size: 9.2pt; line-height: 1.35; }

.result-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: 3mm 0px 2.5mm; }

.result-item { display: flex; align-items: center; gap: 2mm; font-weight: 800; }

.result-check { border: 1px solid rgb(119, 119, 119); display: inline-flex; align-items: center; justify-content: center; font-size: 10pt; }

.result-check.checked { background: rgb(11, 107, 87); color: rgb(255, 255, 255); border-color: rgb(11, 107, 87); }

.conclusion-line { margin-top: 2mm; }

.conclusion-line b { font-weight: 900; }

.assinatura-area { text-align: center; margin-top: 3.5mm; font-size: 9pt; }

.assinatura-date { margin: 2.8mm 0px 4mm; font-size: 8.8pt; }

.assinatura-line { border-top: 1px solid rgb(51, 51, 51); margin: 0px auto 1.5mm; }

.foot { margin-top: auto; padding-top: 2.2mm; border-top: 1.2mm solid rgb(6, 77, 67); text-align: center; font-size: 8.3pt; line-height: 1.4; position: relative; }

.foot::after { content: ""; position: absolute; right: 0px; top: -1.2mm; width: 33mm; height: 1.2mm; background: rgb(253, 176, 34); }

.foot a { color: rgb(0, 86, 166); text-decoration: underline; }

.validation-green { border-color: rgb(11, 107, 87); background: rgb(244, 250, 247); }

.validation-green .parecer-section-title { background: rgb(233, 244, 239); border-bottom-color: rgb(139, 183, 168); }

@media print {
#printArea .paper { padding: 9mm 10mm 8mm !important; }
}

.juridico-box { margin-top: 3mm; }

.juridico-box .parecer-section-body { min-height: auto; padding: 2.6mm 3mm; }

.juridico-status { margin-bottom: 1.2mm; }

.juridico-aprovacao { margin-top: 1.8mm; padding: 2mm 2.4mm; border-left: 1.2mm solid rgb(11, 107, 87); background: rgb(237, 248, 243); }

.juridico-obs { margin-top: 1.8mm; line-height: 1.35; }

.paper { height: auto !important; min-height: 297mm !important; max-height: none !important; overflow: visible !important; }

.paper-content { height: auto !important; }

.parecer-section, .conclusao-box, .juridico-box, .meta { break-inside: avoid; overflow: visible !important; }

.parecer-section-body { overflow-wrap: anywhere; word-break: normal; height: auto !important; max-height: none !important; min-height: 0px !important; overflow: visible !important; white-space: normal !important; }

.conclusao-body, .juridico-box .parecer-section-body { height: auto !important; max-height: none !important; overflow: visible !important; }

.assinatura-area, .assinatura-date, .foot { break-inside: avoid; }

@media print {
@page { size: a4; margin: 0px; }

#printArea .paper { overflow: visible !important; padding: 9mm 10mm 8mm !important; }

#printArea .parecer-section, #printArea .conclusao-box, #printArea .juridico-box { break-inside: avoid !important; }

#printArea .parecer-section-body, #printArea .conclusao-body { overflow: visible !important; max-height: none !important; height: auto !important; }
}

#preview .paper { width: 210mm !important; min-width: 210mm !important; max-width: 210mm !important; height: auto !important; min-height: 297mm !important; max-height: none !important; overflow: visible !important; box-sizing: border-box !important; margin: 0px !important; }

#preview .paper-content { height: auto !important; min-height: 279mm !important; overflow: visible !important; }

#preview .parecer-section, #preview .parecer-section-body, #preview .conclusao-box, #preview .conclusao-body, #preview .juridico-box, #preview .meta { height: auto !important; max-height: none !important; overflow: visible !important; }

#preview .parecer-section-body, #preview .conclusao-body, #preview .juridico-box .parecer-section-body, #preview .meta-row span { white-space: normal !important; overflow-wrap: anywhere !important; word-break: normal !important; }

@media print {
html, body { overflow: visible !important; margin: 0px !important; padding: 0px !important; background: rgb(255, 255, 255) !important; }

#printArea { overflow: visible !important; margin: 0px !important; padding: 0px !important; }

#printArea .paper { overflow: visible !important; margin: 0px !important; padding: 9mm 10mm 8mm !important; }

#printArea .paper-content { overflow: visible !important; }

#printArea .meta, #printArea .paper-head, #printArea .paper-doc-title { break-inside: avoid !important; }

#printArea .parecer-section { overflow: visible !important; }

#printArea .parecer-section-body, #printArea .conclusao-body, #printArea .juridico-box .parecer-section-body { height: auto !important; max-height: none !important; overflow: visible !important; white-space: normal !important; overflow-wrap: anywhere !important; }

#printArea .conclusao-box, #printArea .juridico-box, #printArea .assinatura-area, #printArea .assinatura-date, #printArea .foot { break-inside: avoid !important; }

@page { size: a4; margin: 0px; }
}

.paper-title-wrap { flex-direction: column !important; }

.paper-title-main { font-size: 17pt !important; }

.meta-row { grid-template-columns: 58mm 1fr !important; }

.single-line-label { font-size: 8.7pt !important; }

.analysis-subsection { margin-top: 3mm; padding-top: 2.5mm; border-top: 1px solid rgb(169, 190, 181); }

.fixed-opinion-note { margin-top: 3mm; padding: 2.5mm 3mm; border: 1px solid rgb(224, 165, 26); border-radius: 1.2mm; background: rgb(255, 248, 232); font-style: normal; font-variant: normal; font-size-adjust: none; font-language-override: normal; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-weight: normal; font-stretch: normal; font-size: 8.8pt; font-family: Arial, Helvetica, sans-serif; break-inside: avoid; }

.juridico-box .parecer-section-body { font-size: 8.8pt !important; }

.juridico-aprovacao { margin-top: 1.7mm; padding: 2mm 2.3mm; border: 1px solid rgb(147, 198, 172); border-radius: 1mm; background: rgb(238, 248, 243); }

.juridico-obs { margin-top: 1.7mm; }

.paper::before { content: "" !important; position: absolute !important; right: 8mm !important; bottom: 32mm !important; width: 95mm !important; height: 112mm !important; background: url("../img/logo_camara_transparente.png") center center / contain no-repeat !important; opacity: 0.055 !important; filter: grayscale(1) !important; pointer-events: none !important; z-index: 0 !important; }

@media print {
@page { size: a4; margin: 0px !important; }

html, body { margin: 0px !important; padding: 0px !important; overflow: hidden !important; background: rgb(255, 255, 255) !important; }

#printArea { overflow: hidden !important; margin: 0px !important; padding: 0px !important; }

#printArea .paper { margin: 0px !important; padding: 11.688mm 12.987mm 10.39mm !important; overflow: hidden !important; }

#printArea .paper-content { overflow: hidden !important; }

#printArea .parecer-section, #printArea .conclusao-box, #printArea .juridico-box, #printArea .fixed-opinion-note, #printArea .assinatura-area, #printArea .assinatura-date, #printArea .foot { break-inside: avoid !important; }
}

@media print {
@page { size: a4; margin: 0px !important; }

html, body { margin: 0px !important; padding: 0px !important; overflow: visible !important; background: rgb(255, 255, 255) !important; }

#printArea { overflow: visible !important; margin: 0px !important; padding: 0px !important; }

#printArea .paper { margin: 0px !important; padding: 9mm 10mm 8mm !important; overflow: visible !important; box-shadow: none !important; }

#printArea .paper-content { overflow: visible !important; }

#printArea .parecer-section, #printArea .parecer-section-body, #printArea .conclusao-box, #printArea .conclusao-body, #printArea .juridico-box, #printArea .juridico-box .parecer-section-body, #printArea .fixed-opinion-note { height: auto !important; max-height: none !important; overflow: visible !important; white-space: normal !important; overflow-wrap: anywhere !important; }

#printArea .paper-head, #printArea .paper-doc-title, #printArea .meta, #printArea .conclusao-box, #printArea .juridico-box, #printArea .fixed-opinion-note, #printArea .assinatura-date, #printArea .assinatura-area, #printArea .foot { break-inside: avoid !important; }

#printArea .parecer-section { break-inside: auto !important; }

#printArea .parecer-section-title { break-after: avoid !important; }

#printArea .paper::before { position: absolute !important; }
}

.paper-head { grid-template-columns: 42mm 1fr 42mm !important; gap: 4mm !important; }

.paper-logo { grid-column: 1 !important; justify-self: center !important; }

.paper-title-wrap { grid-column: 2 !important; flex-direction: column !important; }

.paper-title-main, .paper-title-sub { width: 100% !important; margin-left: auto !important; margin-right: auto !important; text-align: center !important; }

.paper-title-main { font-size: 16.5pt !important; }

.parecer-section-body, .conclusao-body, .juridico-box .parecer-section-body, .fixed-opinion-note, .analysis-subsection { hyphens: auto; text-align: justify !important; text-justify: inter-word !important; }

.meta-row span, .assinatura-date, .assinatura-area, .foot { text-align: left; }

.assinatura-date { text-align: right !important; }

.assinatura-area, .foot { text-align: center !important; }

#printArea { break-before: avoid !important; }

#printArea .paper { break-before: avoid !important; }

@media print {
@page { size: a4; margin: 0px !important; }

html, body { margin: 0px !important; padding: 0px !important; height: auto !important; min-height: 0px !important; max-height: none !important; overflow: visible !important; background: rgb(255, 255, 255) !important; }

body { display: block !important; }

#printArea { display: block !important; position: absolute !important; left: 0px !important; top: 0px !important; width: 210mm !important; height: auto !important; min-height: 0px !important; max-height: none !important; margin: 0px !important; padding: 0px !important; overflow: visible !important; break-before: avoid !important; }

#printArea .paper { position: relative !important; display: block !important; margin: 0px !important; padding: 9mm 10mm 8mm !important; overflow: visible !important; zoom: 1 !important; transform: none !important; break-before: avoid !important; break-after: auto !important; }

#printArea .paper-content { display: block !important; overflow: visible !important; }

#printArea .paper-head { grid-template-columns: 42mm 1fr 42mm !important; }

#printArea .parecer-section-body, #printArea .conclusao-body, #printArea .juridico-box .parecer-section-body, #printArea .fixed-opinion-note, #printArea .analysis-subsection { text-align: justify !important; text-justify: inter-word !important; height: auto !important; max-height: none !important; overflow: visible !important; }
}

#printArea { display: none; }

@media print {

}

.paper { padding: 15mm !important; box-sizing: border-box !important; }

.paper-head { position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 32mm !important; padding-bottom: 3mm !important; box-sizing: border-box !important; }

.paper-logo { position: absolute !important; left: 0px !important; top: 50% !important; transform: translateY(-50%) !important; width: 34mm !important; height: 29mm !important; object-fit: contain !important; }

.paper-title-wrap { width: 100% !important; max-width: none !important; padding: 0px 4mm !important; box-sizing: border-box !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; }

.paper-title-main { display: block !important; width: 100% !important; white-space: nowrap !important; text-align: center !important; font-size: 15pt !important; font-weight: 900 !important; margin: 0px !important; padding: 0px !important; }

.paper-title-sub { display: block !important; width: 100% !important; white-space: nowrap !important; text-align: center !important; font-size: 11.5pt !important; margin: 2mm 0px 0px !important; padding: 0px !important; }

.paper-content { min-height: 267mm !important; }

@media print {
@page { size: a4; margin: 0px !important; }

#printArea .paper { width: 210mm !important; min-width: 210mm !important; max-width: 210mm !important; height: auto !important; min-height: 297mm !important; max-height: none !important; padding: 15mm !important; box-sizing: border-box !important; overflow: visible !important; }

#printArea .paper-content { min-height: 267mm !important; height: auto !important; max-height: none !important; }

#printArea .paper-head { position: relative !important; display: flex !important; justify-content: center !important; width: 100% !important; }

#printArea .paper-logo { position: absolute !important; left: 0px !important; top: 50% !important; transform: translateY(-50%) !important; }

#printArea .paper-title-wrap { width: 100% !important; text-align: center !important; }

#printArea .paper-title-main, #printArea .paper-title-sub { white-space: nowrap !important; width: 100% !important; text-align: center !important; }
}

#preview { overflow: auto !important; padding: 18px !important; background: rgb(217, 223, 220) !important; }

#preview .preview-page { position: relative !important; width: 210mm !important; height: 297mm !important; min-height: 297mm !important; max-height: 297mm !important; overflow: hidden !important; margin: 0px auto !important; padding: 15mm !important; box-sizing: border-box !important; background: rgb(255, 255, 255) !important; }

#preview .preview-page .paper-content { height: 267mm !important; min-height: 267mm !important; max-height: 267mm !important; overflow: hidden !important; }

.preview-page-gap { height: 18px; }

.preview-page-number { position: absolute; bottom: 5mm; right: 15mm; color: rgb(119, 119, 119); font: 7.5pt Arial, Helvetica, sans-serif; }

.preview-measure-paper { width: 210mm !important; padding: 15mm !important; box-sizing: border-box !important; }

.preview-measure-paper .paper-content { height: 267mm !important; min-height: 267mm !important; max-height: 267mm !important; overflow: hidden !important; }

@media print {
body.printing-parecer #printArea { margin: 0px !important; padding: 0px !important; }

#printArea .preview-page { width: 210mm !important; height: 297mm !important; min-height: 297mm !important; max-height: 297mm !important; margin: 0px !important; padding: 15mm !important; box-sizing: border-box !important; overflow: hidden !important; }

#printArea .preview-page .paper-content { height: 267mm !important; min-height: 267mm !important; max-height: 267mm !important; overflow: hidden !important; }
}

:root { --parecer-page-width: 210mm; --parecer-page-height: 297mm; --parecer-margin: 15mm; --parecer-content-height: 267mm; }

#preview .preview-page, #printArea .preview-page { width: var(--parecer-page-width) !important; min-width: var(--parecer-page-width) !important; max-width: var(--parecer-page-width) !important; height: var(--parecer-page-height) !important; min-height: var(--parecer-page-height) !important; max-height: var(--parecer-page-height) !important; padding: var(--parecer-margin) !important; margin: 0px !important; box-sizing: border-box !important; overflow: hidden !important; background: rgb(255, 255, 255) !important; position: relative !important; }

#preview .preview-page .paper-content, #printArea .preview-page .paper-content { width: 100% !important; height: var(--parecer-content-height) !important; min-height: var(--parecer-content-height) !important; max-height: var(--parecer-content-height) !important; box-sizing: border-box !important; overflow: hidden !important; }

#preview { --preview-zoom: .77; }

#preview .preview-page { zoom: var(--preview-zoom) !important; box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 14px !important; }

#preview .preview-page-gap { height: 18px !important; }

@media print {
@page { size: a4 !important; margin: 0px !important; }

html, body { width: 210mm !important; margin: 0px !important; padding: 0px !important; background: rgb(255, 255, 255) !important; }

body > :not(#printArea) { display: none !important; }

body.printing-parecer #printArea { display: block !important; position: static !important; width: 210mm !important; margin: 0px !important; padding: 0px !important; overflow: visible !important; zoom: 1 !important; transform: none !important; }

#printArea .preview-page { display: block !important; zoom: 1 !important; transform: none !important; box-shadow: none !important; break-before: auto !important; break-after: page !important; }

#printArea .preview-page:last-child { break-after: auto !important; }

#printArea .preview-page-gap { display: none !important; }

#printArea .preview-page-number { display: block !important; }

#printArea .paper-head, #printArea .paper-title-wrap, #printArea .paper-title-main, #printArea .paper-title-sub, #printArea .meta, #printArea .parecer-section, #printArea .parecer-section-body, #printArea .conclusao-box, #printArea .conclusao-body, #printArea .juridico-box, #printArea .fixed-opinion-note, #printArea .assinatura-date, #printArea .assinatura-area, #printArea .foot { zoom: 1 !important; transform: none !important; }
}

.preview-page { position: relative !important; }

.preview-page .paper-content { position: relative !important; padding-bottom: 17mm !important; box-sizing: border-box !important; }

.preview-page .foot { position: absolute !important; margin: 0px !important; padding-top: 2.2mm !important; border-top: 1.2mm solid rgb(6, 77, 67) !important; background: rgb(255, 255, 255) !important; text-align: center !important; z-index: 3 !important; }

.preview-page .foot::after { content: "" !important; position: absolute !important; right: 0px !important; background: rgb(253, 176, 34) !important; display: block !important; }

.paper-head::after { content: "" !important; position: absolute !important; right: 0px !important; bottom: -1.4mm !important; width: 34mm !important; height: 1.4mm !important; background: rgb(253, 176, 34) !important; display: block !important; }

.preview-page, .preview-page *, #printArea, #printArea * { print-color-adjust: exact !important; }

@media print {
#printArea .preview-page { position: relative !important; }

#printArea .preview-page .paper-content { position: relative !important; padding-bottom: 17mm !important; box-sizing: border-box !important; }

#printArea .preview-page .foot { position: absolute !important; margin: 0px !important; padding-top: 2.2mm !important; border-top: 1.2mm solid rgb(6, 77, 67) !important; background: rgb(255, 255, 255) !important; text-align: center !important; z-index: 3 !important; }

#printArea .preview-page .foot::after { content: "" !important; position: absolute !important; right: 0px !important; background: rgb(253, 176, 34) !important; display: block !important; }

#printArea .paper-head::after { content: "" !important; position: absolute !important; right: 0px !important; bottom: -1.4mm !important; width: 34mm !important; height: 1.4mm !important; background: rgb(253, 176, 34) !important; display: block !important; }
}

.app { grid-template-columns: 300px minmax(0px, 1fr) !important; }

.sidebar-ref { width: 300px !important; min-width: 300px !important; height: 100vh !important; position: sticky !important; top: 0px !important; box-sizing: border-box !important; overflow: hidden auto !important; padding: 11px 18px 82px !important; color: rgb(255, 255, 255) !important; background: radial-gradient(circle at 84% 7%, rgba(0, 132, 91, 0.2), transparent 32%), linear-gradient(rgb(0, 61, 52) 0%, rgb(0, 77, 64) 44%, rgb(0, 57, 47) 100%) !important; border-right: 1px solid rgba(255, 255, 255, 0.1) !important; }

.sidebar-ref::-webkit-scrollbar { width: 5px; }

.sidebar-ref::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.14); border-radius: 8px; }

.side-logo-wrap { text-align: center; height: 86px; }

.side-logo { width: 105px; height: 84px; object-fit: contain; filter: drop-shadow(rgba(0, 0, 0, 0.2) 0px 2px 2px); }

.side-title { text-align: center; padding: 1px 0px 11px; margin-bottom: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.18); }

.side-title strong { color: rgb(255, 255, 255); display: block; font: 900 14px / 1.22 Arial, sans-serif; }

.side-title span { display: block; margin-top: 5px; color: rgb(255, 255, 255); font: 400 11px Arial, sans-serif; }

.side-new { width: 100%; height: 38px; border: 0px; border-radius: 5px; background: rgb(10, 162, 102); color: rgb(255, 255, 255); font: bold 12px Arial, sans-serif; cursor: pointer; margin: 2px 0px 12px; }

.side-new:hover { background: rgb(12, 175, 110); }

.side-summary { border: 1px solid rgb(8, 160, 107); border-radius: 5px; padding: 10px 12px; margin-bottom: 11px; background: rgb(0, 63, 53); font: 11px / 1.35 Arial, sans-serif; }

.sum-row { display: flex; align-items: center; gap: 12px; }

.sum-row + .sum-row { margin-top: 8px; }

.sum-icon { width: 26px; text-align: center; font-size: 22px; font-weight: bold; }

.sum-green { color: rgb(0, 210, 126) !important; }

.sum-yellow { color: rgb(255, 176, 0) !important; }

.sum-row span:not(.sum-icon) { color: rgb(255, 255, 255); }

.side-section-title { color: rgb(0, 207, 121); font: 900 10px Arial, sans-serif; margin: 10px 0px 5px; }

.side-nav { width: 100%; min-height: 29px; padding: 4px 2px; margin: 0px; border: 0px; border-radius: 4px; background: transparent; color: rgb(255, 255, 255); display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 7px; text-align: left; cursor: pointer; font: 400 11px Arial, sans-serif; }

.side-nav:hover, .side-nav.active { background: rgba(255, 255, 255, 0.07); }

.side-ico { font-size: 14px; text-align: center; color: rgb(255, 255, 255); }

.side-badge { min-width: 20px; height: 20px; padding: 0px 5px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; color: rgb(255, 255, 255); font: bold 9px Arial, sans-serif; }

.side-badge.red { background: rgb(255, 52, 46); }

.side-badge.blue { background: rgb(45, 112, 201); }

.side-badge.orange { background: rgb(255, 91, 30); }

.side-badge.yellow { background: rgb(255, 159, 10); }

.side-badge.purple { background: rgb(113, 60, 199); }

.side-badge.green { background: rgb(100, 184, 58); }

.side-divider { height: 1px; background: rgba(255, 255, 255, 0.17); margin: 8px 0px 3px; }

.side-bottom { position: fixed; left: 0px; bottom: 0px; width: 300px; box-sizing: border-box; padding: 10px 20px 13px; background: rgb(0, 55, 47); border-top: 1px solid rgba(255, 255, 255, 0.16); color: rgb(255, 255, 255); font: 11px Arial, sans-serif; z-index: 50; }

.side-bottom button { display: block; margin-top: 8px; padding: 0px; border: 0px; background: transparent; color: rgb(255, 255, 255); font: 11px Arial, sans-serif; cursor: pointer; }

@media (max-width: 850px) {
.app { grid-template-columns: 1fr !important; }

.sidebar-ref { width: 100% !important; min-width: 0px !important; height: auto !important; position: static !important; }

.side-bottom { position: static; width: auto; margin: 12px -18px -82px; }
}

.paper-head, .preview-page .paper-head { position: relative !important; display: grid !important; grid-template-columns: 25mm minmax(0px, 1fr) !important; align-items: center !important; column-gap: 4mm !important; width: 100% !important; min-height: 22mm !important; padding: 0px 0px 2.2mm !important; margin: 0px !important; box-sizing: border-box !important; }

.paper-logo, .preview-page .paper-logo { position: static !important; grid-column: 1 !important; width: 23mm !important; height: 20mm !important; max-width: 23mm !important; max-height: 20mm !important; object-fit: contain !important; place-self: center !important; transform: none !important; }

.paper-title-wrap, .preview-page .paper-title-wrap { grid-column: 2 !important; width: 100% !important; padding: 0px !important; margin: 0px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; text-align: center !important; }

.paper-title-main, .preview-page .paper-title-main { width: 100% !important; margin: 0px !important; padding: 0px !important; white-space: nowrap !important; text-align: center !important; font-size: 13.2pt !important; line-height: 1.05 !important; letter-spacing: -0.15px !important; font-weight: 900 !important; }

.paper-title-sub, .preview-page .paper-title-sub { width: 100% !important; margin: 1.1mm 0px 0px !important; padding: 0px !important; white-space: nowrap !important; text-align: center !important; font-size: 9.5pt !important; line-height: 1.05 !important; font-weight: 700 !important; }

.paper-head::after, .preview-page .paper-head::after { bottom: -0.7mm !important; height: 0.9mm !important; width: 29mm !important; }

.paper-doc-title { margin: 2.1mm 0px 2.2mm !important; padding: 0px !important; font-size: 11.2pt !important; line-height: 1.08 !important; }

.meta { margin: 0px 0px 2.2mm !important; }

.meta-row { grid-template-columns: 48mm 1fr !important; }

.meta-row b, .meta-row span { padding: 1.15mm 2mm !important; font-size: 8.3pt !important; line-height: 1.16 !important; }

.single-line-label { font-size: 8.1pt !important; white-space: nowrap !important; }

.parecer-section, .conclusao-box { margin: 0px 0px 2.2mm !important; }

.parecer-section-title, .conclusao-title { min-height: 6.2mm !important; padding: 1.25mm 2.2mm !important; font-size: 9pt !important; line-height: 1.08 !important; }

.parecer-section-body, .conclusao-body { padding: 2mm 2.5mm !important; font-size: 8.45pt !important; line-height: 1.25 !important; }

.analysis-subsection { margin-top: 2mm !important; padding-top: 1.6mm !important; line-height: 1.23 !important; }

.analysis-subsection b { font-size: 8.35pt !important; }

.result-grid { margin: 1.5mm 0px !important; gap: 1.3mm 2.5mm !important; }

.result-item { font-size: 8pt !important; line-height: 1.1 !important; }

.result-check { width: 3.6mm !important; height: 3.6mm !important; min-width: 3.6mm !important; font-size: 7.5pt !important; }

.conclusion-line { margin-top: 1.25mm !important; font-size: 8.25pt !important; line-height: 1.18 !important; }

.juridico-box .parecer-section-body { padding: 1.8mm 2.5mm !important; font-size: 8pt !important; line-height: 1.2 !important; }

.juridico-aprovacao { margin-top: 1.2mm !important; padding: 1.4mm 1.8mm !important; font-size: 7.8pt !important; line-height: 1.2 !important; }

.juridico-obs { margin-top: 1.2mm !important; }

.fixed-opinion-note { margin-top: 1.8mm !important; padding: 1.6mm 2.2mm !important; font-size: 7.8pt !important; }

.assinatura-date { margin-top: 2.2mm !important; font-size: 8pt !important; line-height: 1.1 !important; }

.assinatura-area { margin-top: 2mm !important; font-size: 7.8pt !important; line-height: 1.12 !important; }

.assinatura-line { width: 62mm !important; margin: 0px auto 1mm !important; }

.preview-page .paper-content { padding-bottom: 17mm !important; }

.preview-page .foot { left: 15mm !important; right: 15mm !important; bottom: 6mm !important; padding-top: 1.5mm !important; font-size: 7.3pt !important; line-height: 1.2 !important; border-top: 0.9mm solid rgb(6, 77, 67) !important; }

.preview-page .foot::after { top: -0.9mm !important; height: 0.9mm !important; width: 29mm !important; }

.preview-page::before { opacity: 0.045 !important; }

@media print {
#printArea .preview-page .paper-head { display: grid !important; grid-template-columns: 25mm minmax(0px, 1fr) !important; column-gap: 4mm !important; min-height: 22mm !important; padding: 0px 0px 2.2mm !important; }

#printArea .preview-page .paper-logo { position: static !important; width: 23mm !important; height: 20mm !important; max-width: 23mm !important; max-height: 20mm !important; transform: none !important; }

#printArea .preview-page .paper-title-wrap { grid-column: 2 !important; width: 100% !important; padding: 0px !important; text-align: center !important; }

#printArea .preview-page .paper-title-main { font-size: 13.2pt !important; line-height: 1.05 !important; white-space: nowrap !important; text-align: center !important; }

#printArea .preview-page .paper-title-sub { font-size: 9.5pt !important; line-height: 1.05 !important; white-space: nowrap !important; text-align: center !important; }

#printArea .preview-page .paper-content { padding-bottom: 17mm !important; }

#printArea .preview-page .foot { left: 15mm !important; right: 15mm !important; bottom: 6mm !important; padding-top: 1.5mm !important; font-size: 7.3pt !important; line-height: 1.2 !important; border-top: 0.9mm solid rgb(6, 77, 67) !important; }

#printArea .preview-page .foot::after { top: -0.9mm !important; height: 0.9mm !important; width: 29mm !important; }
}

.encerrar-global-btn { background: rgb(180, 35, 24) !important; border-color: rgb(180, 35, 24) !important; }

.warning-close-demand { margin-bottom: 12px; padding: 10px 12px; border-radius: 6px; background: rgb(255, 244, 237); border: 1px solid rgb(247, 201, 181); color: rgb(138, 52, 31); font-size: 11px; line-height: 1.4; }

.reabrir-global-btn { background: rgb(8, 127, 91) !important; color: rgb(255, 255, 255) !important; border-color: rgb(8, 127, 91) !important; }

.reabrir-global-btn:hover { background: rgb(6, 105, 75) !important; }

.reopen-info { margin-bottom: 12px; padding: 10px 12px; border-radius: 6px; background: rgb(237, 248, 242); border: 1px solid rgb(189, 223, 200); color: rgb(23, 109, 66); font-size: 11px; }

.reopen-note { margin-top: 10px; padding: 9px 11px; border-radius: 6px; background: rgb(247, 249, 250); border: 1px solid rgb(220, 227, 230); color: rgb(89, 99, 108); font-size: 10.5px; line-height: 1.4; }

:root { --ui-green-dark: #00483c; --ui-green: #087f5b; --ui-green-light: #eaf6f0; --ui-blue-dark: #174f87; --ui-blue: #286fb3; --ui-blue-light: #eaf3fb; --ui-yellow: #f5bc27; --ui-yellow-dark: #d89b09; --ui-yellow-light: #fff6d8; --ui-white: #ffffff; --ui-bg: #f5f8fa; --ui-border: #d9e3e7; --ui-text: #263936; }

html, body { background: radial-gradient(circle at 92% 2%, rgba(40, 111, 179, 0.08), transparent 27%), linear-gradient(rgb(255, 255, 255) 0%, rgb(245, 248, 250) 100%) !important; color: var(--ui-text) !important; }

.sidebar, .sidebar-ref { background: radial-gradient(circle at 87% 4%, rgba(40, 111, 179, 0.4), transparent 31%), linear-gradient(170deg, rgb(0, 63, 53) 0%, rgb(0, 80, 68) 35%, rgb(7, 92, 108) 68%, rgb(23, 79, 135) 100%) !important; border-right: 3px solid var(--ui-yellow) !important; box-shadow: rgba(0, 60, 51, 0.14) 4px 0px 16px !important; }

.side-title, .sidebar-head { border-bottom-color: rgba(255, 255, 255, 0.24) !important; }

.side-title strong, .sidebar-head strong { color: rgb(255, 255, 255) !important; }

.side-title span, .sidebar-head span { color: rgb(232, 243, 251) !important; }

.side-section-title, .nav-group-title { color: rgb(255, 212, 95) !important; font-weight: 900 !important; }

.side-divider, .sidebar-separator { background: linear-gradient(90deg, rgba(255, 255, 255, 0.06), rgba(245, 188, 39, 0.9), rgba(255, 255, 255, 0.06)) !important; }

.side-new, .nav-primary { background: linear-gradient(rgb(52, 127, 193), rgb(35, 105, 168)) !important; border: 1px solid rgba(255, 255, 255, 0.18) !important; color: rgb(255, 255, 255) !important; box-shadow: rgba(14, 66, 112, 0.22) 0px 3px 9px !important; }

.side-new:hover, .nav-primary:hover { background: linear-gradient(rgb(61, 139, 208), rgb(40, 116, 184)) !important; }

.side-summary, .sidebar-summary { background: rgba(255, 255, 255, 0.075) !important; border: 1px solid rgba(255, 255, 255, 0.27) !important; }

.sum-green, .sidebar-summary b:first-child { color: rgb(95, 224, 165) !important; }

.sum-yellow, .sidebar-summary b:last-child { color: rgb(255, 211, 91) !important; }

.side-nav, .sidebar .nav { color: rgb(255, 255, 255) !important; }

.side-nav:hover, .sidebar .nav:hover { background: rgba(255, 255, 255, 0.09) !important; }

.side-nav.active, .sidebar .nav.active { color: rgb(255, 255, 255) !important; background: linear-gradient(90deg, rgba(40, 111, 179, 0.82), rgba(40, 111, 179, 0.25)) !important; box-shadow: inset 3px 0 0 var(--ui-yellow) !important; }

.side-ico, .nav-icon, .nav-label { color: rgb(255, 255, 255) !important; }

.side-badge.blue { background: rgb(52, 127, 193) !important; }

.side-badge.green { background: rgb(36, 164, 109) !important; }

.side-badge.yellow { background: rgb(237, 174, 25) !important; }

.side-badge.orange { background: rgb(232, 137, 45) !important; }

.side-badge.purple { background: rgb(89, 111, 186) !important; }

.side-badge.red { background: rgb(217, 77, 77) !important; }

.side-bottom, .sidebar-footer { background: linear-gradient(90deg, rgb(0, 57, 47), rgb(23, 79, 135)) !important; border-top: 1px solid rgba(245, 188, 39, 0.7) !important; }

.main, .content, .workspace, .main-dashboard { background: transparent !important; }

.panel, .card, .box, .detail-card, .workflow-card { background: rgb(255, 255, 255) !important; border-color: var(--ui-border) !important; box-shadow: rgba(0, 64, 55, 0.055) 0px 3px 13px !important; }

.cards .card:nth-child(4n+1) { border-top: 3px solid var(--ui-green) !important; }

.cards .card:nth-child(4n+2) { border-top: 3px solid var(--ui-blue) !important; }

.cards .card:nth-child(4n+3) { border-top: 3px solid var(--ui-yellow) !important; }

.cards .card:nth-child(4n) { border-top: 3px solid rgb(108, 168, 220) !important; }

.preview-head, .panel-head, .workflow-head, .all-demands-head { background: linear-gradient(90deg, rgb(244, 249, 247), rgb(238, 245, 251)) !important; border-bottom-color: rgb(212, 226, 230) !important; color: rgb(7, 91, 74) !important; }

.demand-tabs { border-bottom-color: rgb(213, 226, 232) !important; }

.demand-tab, .tab { color: rgb(69, 99, 91) !important; }

.demand-tab:hover, .tab:hover { background: rgb(241, 247, 251) !important; color: var(--ui-blue-dark) !important; }

.demand-tab.active, .tab.active { background: linear-gradient(rgb(52, 127, 193), rgb(35, 105, 168)) !important; border-color: rgb(35, 105, 168) !important; color: rgb(255, 255, 255) !important; box-shadow: inset 0 -3px 0 var(--ui-yellow) !important; }

table thead th { background: linear-gradient(rgb(237, 245, 251), rgb(229, 240, 248)) !important; color: rgb(23, 79, 135) !important; border-bottom: 2px solid var(--ui-blue) !important; }

table tbody tr:nth-child(2n) { background: rgb(250, 252, 252) !important; }

table tbody tr:hover { background: rgb(255, 248, 223) !important; }

.tablewrap { border-color: rgb(214, 227, 232) !important; }

.modal-head { background: linear-gradient(90deg, rgb(0, 80, 68), rgb(35, 105, 168)) !important; color: rgb(255, 255, 255) !important; border-bottom: 3px solid var(--ui-yellow) !important; }

.modal-box { border-color: rgb(205, 221, 218) !important; box-shadow: rgba(0, 55, 47, 0.24) 0px 18px 55px !important; }

input, select, textarea { background: rgb(255, 255, 255) !important; border-color: rgb(203, 217, 214) !important; }

input:focus, select:focus, textarea:focus { border-color: var(--ui-blue) !important; outline: rgba(40, 111, 179, 0.18) solid 2px !important; }

label { color: rgb(53, 83, 76) !important; }

.btn.green, button.green { background: rgb(8, 127, 91) !important; border-color: rgb(8, 127, 91) !important; color: rgb(255, 255, 255) !important; }

.btn.blue, button.blue { background: rgb(40, 111, 179) !important; border-color: rgb(40, 111, 179) !important; color: rgb(255, 255, 255) !important; }

.btn.warn, .btn.yellow, button.yellow { background: rgb(245, 188, 39) !important; border-color: rgb(221, 163, 19) !important; color: rgb(96, 70, 0) !important; }

.btn.gray { background: rgb(255, 255, 255) !important; border-color: rgb(205, 219, 215) !important; color: rgb(57, 86, 78) !important; }

.btn.gray:hover { background: rgb(242, 247, 245) !important; }

.protocol-box, .info-box, .help-box, .notice { background: rgb(238, 246, 252) !important; border-color: rgb(186, 214, 235) !important; color: rgb(38, 86, 116) !important; }

.warning-close-demand, .warning, .alert, .attention { background: rgb(255, 248, 226) !important; border-color: rgb(235, 204, 113) !important; color: rgb(115, 85, 12) !important; }

.reopen-info, .success { background: rgb(237, 248, 242) !important; border-color: rgb(185, 221, 202) !important; color: rgb(8, 112, 79) !important; }

.encerrar-global-btn { background: rgb(180, 35, 24) !important; border-color: rgb(180, 35, 24) !important; color: rgb(255, 255, 255) !important; }

a { color: rgb(31, 99, 165) !important; }

.paper, .preview-page, #printArea .paper { background: rgb(255, 255, 255) !important; color: rgb(29, 37, 35) !important; }

.paper::before, .preview-page::before, #printArea .paper::before { filter: grayscale(1) !important; }

.paper-head, #printArea .paper-head { min-height: 20mm !important; padding-bottom: 2mm !important; border-bottom: 0px !important; }

.paper-logo, #printArea .paper-logo { width: 21mm !important; height: 18mm !important; max-width: 21mm !important; max-height: 18mm !important; }

.paper-title-main { font-size: 12.8pt !important; line-height: 1.05 !important; font-weight: 900 !important; }

.paper-title-sub { color: rgb(36, 95, 147) !important; font-size: 9.2pt !important; line-height: 1.05 !important; font-weight: 700 !important; }

.paper-head::after, #printArea .paper-head::after { content: "" !important; display: block !important; position: absolute !important; left: 0px !important; right: 0px !important; bottom: -1.2mm !important; width: 100% !important; background: linear-gradient(90deg, rgb(6, 77, 67) 0%, rgb(6, 77, 67) 58%, rgb(36, 95, 147) 58%, rgb(36, 95, 147) 86%, rgb(245, 188, 39) 86%, rgb(245, 188, 39) 100%) !important; }

.paper-doc-title { color: rgb(23, 63, 102) !important; margin: 2.4mm 0px !important; font-size: 10.8pt !important; letter-spacing: 0.01em !important; }

.meta { border: 1px solid rgb(200, 216, 210) !important; background: rgb(255, 255, 255) !important; border-radius: 1.2mm !important; overflow: hidden !important; }

.meta-row { border-bottom: 1px solid rgb(223, 232, 228) !important; }

.meta-row b { background: rgb(242, 246, 244) !important; border-right: 1px solid rgb(215, 227, 222) !important; font-weight: 900 !important; }

.meta-row span { background: rgb(255, 255, 255) !important; }

.parecer-section, .conclusao-box, .juridico-box { background: rgba(255, 255, 255, 0.95) !important; border: 1px solid rgb(201, 216, 210) !important; border-radius: 1.2mm !important; box-shadow: none !important; }

.parecer-section-title, .conclusao-title, .juridico-box .parecer-section-title, .validation-green .parecer-section-title { background: rgb(241, 246, 244) !important; border-bottom: 1px solid rgb(185, 206, 197) !important; font-weight: 900 !important; }

.analysis-subsection { border-top: 1px solid rgb(225, 232, 229) !important; }

.analysis-subsection b { color: rgb(6, 77, 67) !important; }

.conclusao-box { border-color: rgb(143, 183, 168) !important; }

.conclusao-title { background: rgb(234, 244, 239) !important; border-bottom-color: rgb(168, 200, 188) !important; box-shadow: rgb(8, 127, 91) 4px 0px 0px inset !important; }

.result-item { color: rgb(38, 59, 53) !important; }

.result-check { border-color: rgb(123, 151, 141) !important; background: rgb(255, 255, 255) !important; }

.result-item:has(.result-check.checked), .result-item:has(.checked) { color: rgb(6, 77, 67) !important; font-weight: 900 !important; }

.juridico-box { border-color: rgb(142, 181, 167) !important; }

.juridico-box .parecer-section-title { background: rgb(237, 245, 241) !important; }

.juridico-aprovacao { background: rgb(245, 249, 247) !important; border-left: 1.2mm solid rgb(8, 127, 91) !important; }

.juridico-obs { color: rgb(51, 77, 70) !important; }

.fixed-opinion-note { background: rgb(255, 250, 240) !important; border-width: 1px 1px 1px 4px !important; border-style: solid !important; border-color: rgb(229, 199, 101) rgb(229, 199, 101) rgb(229, 199, 101) rgb(245, 188, 39) !important; border-image: none !important; padding: 1.4mm 2mm !important; margin-top: 1.5mm !important; font-size: 7.6pt !important; line-height: 1.16 !important; }

.assinatura-date { color: rgb(59, 74, 70) !important; }

.assinatura-area { color: rgb(38, 59, 53) !important; }

.assinatura-line { border-color: rgb(124, 142, 136) !important; }

.foot, #printArea .foot { border-top: 0px !important; padding-top: 2mm !important; color: rgb(82, 97, 93) !important; background: rgb(255, 255, 255) !important; position: relative !important; }

.foot::before, #printArea .foot::before { content: "" !important; display: block !important; position: absolute !important; left: 0px !important; right: 0px !important; top: 0px !important; background: linear-gradient(90deg, rgb(6, 77, 67) 0%, rgb(6, 77, 67) 58%, rgb(36, 95, 147) 58%, rgb(36, 95, 147) 86%, rgb(245, 188, 39) 86%, rgb(245, 188, 39) 100%) !important; }

.foot::after, #printArea .foot::after, #printArea .preview-page .foot::after { display: none !important; }

@media print {
#printArea .paper { background: rgb(255, 255, 255) !important; }

#printArea .paper-head, #printArea .paper-doc-title, #printArea .meta, #printArea .conclusao-box, #printArea .juridico-box, #printArea .fixed-opinion-note, #printArea .assinatura-date, #printArea .assinatura-area, #printArea .foot { print-color-adjust: exact !important; }
}

.meta { border: 0px !important; border-radius: 0px !important; background: transparent !important; overflow: visible !important; margin: 0px 0px 3mm !important; grid-template-columns: 1fr 1fr !important; }

.meta-row { grid-template-columns: auto 1fr !important; min-height: auto !important; padding: 1.2mm 0px !important; border-width: 0px 0px 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgb(230, 236, 233) !important; border-image: none !important; background: transparent !important; }

.meta-row:nth-child(1), .meta-row:nth-child(2) { grid-column: auto !important; }

.meta-row:nth-child(3), .meta-row:nth-child(4) { grid-column: 1 / -1 !important; }

.meta-row:last-child { border-bottom: 0px !important; }

.meta-row b { padding: 0px !important; margin: 0px !important; border: 0px !important; background: transparent !important; font-size: 7.7pt !important; line-height: 1.15 !important; font-weight: 800 !important; letter-spacing: 0.02em !important; }

.meta-row span { padding: 0px !important; margin: 0px !important; background: transparent !important; font-size: 8.5pt !important; line-height: 1.25 !important; font-weight: 600 !important; }

.meta-row:nth-child(4) { margin-top: 0.3mm !important; padding-top: 1.5mm !important; border-top: 1px solid rgb(220, 230, 226) !important; }

.meta-row:nth-child(4) b { color: rgb(6, 77, 67) !important; }

.meta-row:nth-child(4) span { font-weight: 500 !important; }

@media print {
#printArea .meta { border: 0px !important; background: transparent !important; grid-template-columns: 1fr 1fr !important; }

#printArea .meta-row { border-width: 0px 0px 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgb(230, 236, 233) !important; border-image: none !important; padding: 1.2mm 0px !important; }

#printArea .meta-row:nth-child(3), #printArea .meta-row:nth-child(4) { grid-column: 1 / -1 !important; }

#printArea .meta-row:nth-child(4) { border-top: 1px solid rgb(220, 230, 226) !important; border-bottom: 0px !important; }
}

.meta { margin: 0px 0px 3mm !important; border: 0px !important; background: transparent !important; }

.meta-row { display: grid !important; grid-template-columns: 43mm 1fr !important; align-items: baseline !important; gap: 2mm !important; padding: 1.15mm 0px !important; border-width: 0px 0px 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgb(227, 231, 229) !important; border-image: none !important; background: transparent !important; }

.meta-row:nth-child(1), .meta-row:nth-child(2), .meta-row:nth-child(3), .meta-row:nth-child(4) { grid-column: auto !important; margin: 0px !important; border-top: 0px !important; }

.meta-row:last-child { border-bottom: 0px !important; }

.meta-row b { background: transparent !important; border: 0px !important; color: rgb(77, 91, 87) !important; font-size: 7.7pt !important; font-weight: 800 !important; padding: 0px !important; white-space: nowrap !important; }

.meta-row span { background: transparent !important; color: rgb(29, 40, 37) !important; font-size: 8.5pt !important; font-weight: 500 !important; padding: 0px !important; }

.meta-row:first-child b, .meta-row:first-child span { color: rgb(23, 63, 53) !important; font-weight: 800 !important; }

.paper-title-main { color: rgb(23, 63, 53) !important; }

.paper-title-sub, .paper-doc-title { color: rgb(61, 75, 71) !important; }

.paper-head::after, #printArea .paper-head::after { background: rgb(49, 95, 82) !important; height: 0.7mm !important; }

.parecer-section, .conclusao-box, .juridico-box { border: 1px solid rgb(207, 215, 212) !important; background: rgba(255, 255, 255, 0.96) !important; }

.parecer-section-title, .conclusao-title, .juridico-box .parecer-section-title, .validation-green .parecer-section-title { background: rgb(242, 244, 243) !important; color: rgb(38, 59, 53) !important; border-bottom: 1px solid rgb(207, 215, 212) !important; box-shadow: rgb(49, 95, 82) 2.5px 0px 0px inset !important; }

.conclusao-box { border-color: rgb(174, 189, 184) !important; }

.conclusao-title { background: rgb(237, 241, 239) !important; color: rgb(23, 63, 53) !important; }

.juridico-box { border-color: rgb(185, 197, 193) !important; }

.juridico-box .parecer-section-title { background: rgb(241, 243, 242) !important; color: rgb(38, 59, 53) !important; box-shadow: rgb(49, 95, 82) 2.5px 0px 0px inset !important; }

.juridico-aprovacao { background: rgb(247, 248, 248) !important; border-left: 1mm solid rgb(102, 132, 123) !important; color: rgb(38, 59, 53) !important; }

.fixed-opinion-note { background: rgb(247, 247, 246) !important; border-width: 1px 1px 1px 3px !important; border-style: solid !important; border-color: rgb(214, 217, 215) rgb(214, 217, 215) rgb(214, 217, 215) rgb(119, 127, 124) !important; border-image: none !important; color: rgb(64, 73, 70) !important; }

.foot::before, #printArea .foot::before { background: rgb(49, 95, 82) !important; height: 0.6mm !important; }

.paper::before, .preview-page::before, #printArea .paper::before { opacity: 0.045 !important; }

@media print {
#printArea .meta { border: 0px !important; background: transparent !important; }

#printArea .meta-row { display: grid !important; grid-template-columns: 43mm 1fr !important; border-width: 0px 0px 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgb(227, 231, 229) !important; border-image: none !important; padding: 1.15mm 0px !important; }

#printArea .meta-row:last-child { border-bottom: 0px !important; }
}

.meta { display: grid !important; grid-template-columns: minmax(0px, 1.55fr) minmax(0px, 0.85fr) !important; gap: 0px 7mm !important; }

.meta-row { min-width: 0px !important; }

.meta-row:nth-child(1) { grid-column: 1 !important; grid-template-columns: auto 1fr !important; }

.meta-row:nth-child(2) { grid-column: 2 !important; grid-template-columns: auto 1fr !important; }

.meta-row:nth-child(3) { grid-column: 1 / -1 !important; grid-template-columns: 32mm 1fr !important; }

.meta-row:nth-child(1) b, .meta-row:nth-child(2) b { white-space: nowrap !important; }

.meta-row:nth-child(1) span, .meta-row:nth-child(2) span { min-width: 0px !important; }

.result-item { word-spacing: normal !important; letter-spacing: normal !important; }

.result-item .result-label, .result-item label, .result-item span { word-spacing: normal !important; letter-spacing: normal !important; }

@media print {
#printArea .meta { display: grid !important; grid-template-columns: minmax(0px, 1.55fr) minmax(0px, 0.85fr) !important; column-gap: 7mm !important; }

#printArea .meta-row:nth-child(1) { grid-column: 1 !important; grid-template-columns: auto 1fr !important; }

#printArea .meta-row:nth-child(2) { grid-column: 2 !important; grid-template-columns: auto 1fr !important; }

#printArea .meta-row:nth-child(3) { grid-column: 1 / -1 !important; grid-template-columns: 32mm 1fr !important; }
}

.result-check.checked, #printArea .result-check.checked { background: rgb(49, 95, 82) !important; color: rgb(255, 255, 255) !important; border-color: rgb(49, 95, 82) !important; font-weight: 900 !important; }

.result-check.checked::before, #printArea .result-check.checked::before { content: "✓" !important; display: block !important; color: rgb(255, 255, 255) !important; font-size: 7.6pt !important; line-height: 1 !important; }

@media print {
#printArea .result-check.checked { background: rgb(49, 95, 82) !important; border-color: rgb(49, 95, 82) !important; print-color-adjust: exact !important; }
}

.paper-logo, .preview-page .paper-logo, #printArea .paper-logo { display: block !important; visibility: visible !important; opacity: 1 !important; object-fit: contain !important; filter: none !important; }

.paper, .paper *, .preview-page, .preview-page *, #printArea .paper, #printArea .paper *, #printArea .preview-page, #printArea .preview-page * { print-color-adjust: exact !important; }

@media print {
html, body { background: rgb(255, 255, 255) !important; }

#printArea .preview-page, #printArea .paper { color: rgb(29, 37, 35) !important; background: rgb(255, 255, 255) !important; }

#printArea .paper-title-main { color: rgb(23, 63, 53) !important; }

#printArea .paper-title-sub, #printArea .paper-doc-title { color: rgb(61, 75, 71) !important; }

#printArea .paper-head::after { background: rgb(49, 95, 82) !important; }

#printArea .parecer-section, #printArea .conclusao-box, #printArea .juridico-box { background: rgba(255, 255, 255, 0.96) !important; border-color: rgb(207, 215, 212) !important; }

#printArea .parecer-section-title, #printArea .conclusao-title, #printArea .juridico-box .parecer-section-title, #printArea .validation-green .parecer-section-title { background: rgb(242, 244, 243) !important; color: rgb(38, 59, 53) !important; border-bottom-color: rgb(207, 215, 212) !important; box-shadow: rgb(49, 95, 82) 2.5px 0px 0px inset !important; }

#printArea .conclusao-box { border-color: rgb(174, 189, 184) !important; }

#printArea .conclusao-title { background: rgb(237, 241, 239) !important; color: rgb(23, 63, 53) !important; }

#printArea .juridico-box { border-color: rgb(185, 197, 193) !important; }

#printArea .juridico-aprovacao { background: rgb(247, 248, 248) !important; border-left-color: rgb(102, 132, 123) !important; color: rgb(38, 59, 53) !important; }

#printArea .fixed-opinion-note { background: rgb(247, 247, 246) !important; border-color: rgb(214, 217, 215) rgb(214, 217, 215) rgb(214, 217, 215) rgb(119, 127, 124) !important; color: rgb(64, 73, 70) !important; }

#printArea .foot::before { background: rgb(49, 95, 82) !important; }

#printArea .result-check { background: rgb(255, 255, 255) !important; border-color: rgb(123, 151, 141) !important; }

#printArea .result-check.checked { background: rgb(49, 95, 82) !important; border-color: rgb(49, 95, 82) !important; color: rgb(255, 255, 255) !important; }

#printArea .paper-logo { display: block !important; visibility: visible !important; opacity: 1 !important; filter: none !important; }
}

.global-search-wrap { position: relative; width: min(620px, 82vw); margin-top: 20px; text-shadow: none; }

.global-search-wrap input { height: 40px; padding: 0px 44px 0px 14px; box-shadow: rgba(0, 0, 0, 0.133) 0px 4px 16px; border: 1px solid rgba(255, 255, 255, 0.55) !important; border-radius: 8px !important; background: rgba(255, 255, 255, 0.96) !important; color: rgb(38, 57, 54) !important; }

.global-search-icon { position: absolute; right: 14px; top: 7px; color: rgb(40, 111, 179); font-size: 22px; }

.global-search-results { display: none; position: absolute; top: 46px; left: 0px; right: 0px; z-index: 9999; background: rgb(255, 255, 255); border: 1px solid rgb(216, 225, 229); border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.2) 0px 12px 30px; overflow: hidden; text-align: left; }

.global-search-results.show { display: block; }

.global-search-results button { display: grid; grid-template-columns: 75px 1fr auto; gap: 10px; width: 100%; padding: 10px 12px; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgb(238, 241, 243); border-image: none; background: rgb(255, 255, 255); align-items: center; text-align: left; cursor: pointer; }

.global-search-results button:hover { background: rgb(245, 249, 251); }

.gs-code { font-weight: 900; color: rgb(23, 79, 135); }

.gs-main b { display: block; color: rgb(38, 57, 54); }

.gs-main small { display: block; margin-top: 2px; color: rgb(102, 112, 133); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.gs-empty { padding: 14px; color: rgb(102, 112, 133); }

.smart-daily { margin-top: 12px; background: rgb(255, 255, 255); border: 1px solid rgb(217, 228, 224); border-radius: 9px; overflow: hidden; box-shadow: rgba(0, 64, 47, 0.043) 0px 3px 12px; }

.smart-head { display: flex; justify-content: space-between; align-items: center; padding: 11px 14px; background: linear-gradient(90deg, rgb(243, 248, 246), rgb(244, 248, 252)); border-bottom: 1px solid rgb(220, 230, 226); }

.smart-head h3 { margin: 0px; color: rgb(7, 91, 74); font-size: 13px; }

.smart-head span { font-size: 10px; color: rgb(102, 112, 133); }

.smart-mini { font-size: 10px; color: rgb(82, 97, 93); }

.smart-mini b { color: rgb(23, 79, 135); }

.smart-list { display: flex; flex-direction: column; }

.smart-row { display: grid; grid-template-columns: 78px minmax(220px, 1.3fr) 210px minmax(220px, 1fr); gap: 10px; align-items: center; padding: 9px 12px; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgb(238, 242, 240); border-image: none; background: rgb(255, 255, 255); text-align: left; cursor: pointer; }

.smart-row:hover { background: rgb(251, 252, 252); }

.smart-row:last-child { border-bottom: 0px; }

.smart-demand b, .smart-next b { display: block; font-size: 10.5px; }

.smart-demand small, .smart-stage small, .smart-next small { display: block; margin-top: 3px; font-size: 9.5px; color: rgb(102, 112, 133); line-height: 1.25; }

.smart-stage { text-align: left; }

.smart-empty { padding: 14px; color: rgb(102, 112, 133); }

.op-priority { display: inline-flex; padding: 4px 7px; border-radius: 10px; font-size: 8.5px; font-weight: 900; }

.op-priority.critical { background: rgb(255, 232, 231); color: rgb(180, 35, 24); }

.op-priority.high { background: rgb(255, 240, 219); color: rgb(166, 95, 0); }

.op-priority.medium { background: rgb(255, 248, 223); color: rgb(137, 102, 0); }

.op-priority.normal { background: rgb(238, 246, 242); color: rgb(8, 127, 91); }

.workflow-progress { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; margin: 4px 0px 10px; padding: 8px 10px; background: rgb(248, 250, 249); border: 1px solid rgb(226, 233, 230); border-radius: 7px; }

.progress-step { position: relative; display: flex; align-items: center; gap: 5px; color: rgb(152, 162, 158); }

.progress-step:not(:last-child)::after { content: ""; position: absolute; right: -4px; top: 10px; width: 8px; height: 1px; background: rgb(214, 223, 219); }

.progress-step span { display: inline-flex; width: 20px; height: 20px; border: 1px solid rgb(203, 213, 209); border-radius: 50%; align-items: center; justify-content: center; font-size: 9px; font-weight: 900; background: rgb(255, 255, 255); }

.progress-step small { font-size: 8.7px; font-weight: 700; }

.progress-step.done { color: rgb(8, 127, 91); }

.progress-step.done span { background: rgb(8, 127, 91); border-color: rgb(8, 127, 91); color: rgb(255, 255, 255); }

.progress-step.active { color: rgb(23, 79, 135); }

.progress-step.active span { background: rgb(40, 111, 179); border-color: rgb(40, 111, 179); color: rgb(255, 255, 255); box-shadow: rgb(229, 240, 250) 0px 0px 0px 3px; }

.progress-step.closed { color: rgb(102, 112, 133); }

.progress-step.closed span { background: rgb(102, 112, 133); color: rgb(255, 255, 255); border-color: rgb(102, 112, 133); }

.next-action-strip { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 9px 11px; margin-bottom: 9px; border-left: 4px solid rgb(40, 111, 179); background: rgb(244, 248, 252); border-radius: 4px; }

.next-action-strip > div:first-child span { display: block; font-size: 8px; font-weight: 900; color: rgb(102, 112, 133); letter-spacing: 0.05em; }

.next-action-strip > div:first-child b { display: block; margin-top: 2px; font-size: 11px; color: rgb(23, 79, 135); }

.next-action-strip > div:last-child { display: flex; gap: 6px; align-items: center; }

.age-chip { display: inline-flex; padding: 4px 7px; border-radius: 10px; font-size: 8.5px; font-weight: 800; }

.age-chip.normal { background: rgb(237, 247, 242); color: rgb(8, 127, 91); }

.age-chip.warn { background: rgb(255, 247, 221); color: rgb(145, 107, 0); }

.age-chip.late { background: rgb(255, 233, 231); color: rgb(180, 35, 24); }

.age-chip.neutral { background: rgb(240, 242, 244); color: rgb(102, 112, 133); }

.modern-timeline { margin: 12px; border: 1px solid rgb(219, 228, 224); border-radius: 7px; overflow: hidden; background: rgb(255, 255, 255); }

.modern-timeline .timeline-title { display: flex; justify-content: space-between; padding: 9px 11px; background: rgb(245, 248, 247); color: rgb(49, 95, 82); font-weight: 900; font-size: 10px; }

.modern-timeline .timeline-title small { color: rgb(119, 131, 127); font-weight: 500; }

.modern-timeline .timeline-list { padding: 8px 12px 11px; }

.modern-timeline .timeline-item { position: relative; display: grid; grid-template-columns: 16px 1fr; gap: 8px; padding: 5px 0px 9px; }

.modern-timeline .timeline-item:not(:last-child)::before { content: ""; position: absolute; left: 6px; top: 17px; bottom: -3px; width: 1px; background: rgb(214, 224, 220); }

.timeline-dot { width: 11px; height: 11px; margin-top: 2px; border-radius: 50%; background: rgb(255, 255, 255); border: 3px solid rgb(49, 95, 82); z-index: 1; }

.timeline-event b { display: block; font-size: 10.5px; color: rgb(36, 59, 53); }

.timeline-event small { display: block; margin-top: 2px; color: rgb(117, 129, 125); font-size: 9px; }

.timeline-event p { margin: 3px 0px 0px; font-size: 9.5px; color: rgb(82, 97, 93); line-height: 1.3; }

.timeline-empty { color: rgb(102, 112, 133); padding: 4px; }

.reports-page { display: none; }

.reports-page.show { display: block; }

.reports-toolbar { display: flex; gap: 8px; padding: 10px 12px; border-bottom: 1px solid rgb(226, 232, 229); background: rgb(250, 252, 252); }

.reports-toolbar select { max-width: 240px; }

.report-kpis { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; padding: 12px; }

.report-kpis > div { padding: 11px; border: 1px solid rgb(223, 231, 228); border-radius: 7px; background: rgb(255, 255, 255); }

.report-kpis span { display: block; font-size: 9px; color: rgb(102, 112, 133); font-weight: 800; }

.report-kpis b { display: block; margin-top: 5px; font-size: 20px; color: rgb(23, 79, 135); }

.reports-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 0px 12px 14px; }

.report-box { border: 1px solid rgb(223, 231, 228); border-radius: 7px; padding: 11px; background: rgb(255, 255, 255); }

.report-box h4 { margin: 0px 0px 10px; font-size: 10px; color: rgb(49, 95, 82); }

.report-bar-row { display: grid; grid-template-columns: minmax(120px, 1fr) 1.4fr 35px; gap: 8px; align-items: center; margin: 7px 0px; font-size: 9.5px; }

.report-bar-track { height: 7px; background: rgb(238, 242, 240); border-radius: 5px; overflow: hidden; }

.report-bar-track i { display: block; height: 100%; border-radius: 5px; }

.report-bar-row b { text-align: right; }

.report-empty { color: rgb(102, 112, 133); font-size: 10px; padding: 5px; }

.encaminhamento-parecer { margin-top: 1.7mm !important; padding-top: 1.5mm !important; border-top: 1px solid rgb(223, 229, 226) !important; }

.encaminhamento-parecer b { color: rgb(49, 95, 82) !important; }

@media (max-width: 1150px) {
.smart-row { grid-template-columns: 75px 1fr 180px; }

.smart-next { grid-column: 2 / -1; }

.report-kpis { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 800px) {
.smart-head { align-items: flex-start; gap: 8px; flex-direction: column; }

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

.smart-next { grid-column: auto; }

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

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

.report-kpis { grid-template-columns: repeat(2, 1fr); }
}

@media print {
#reportsView.show { display: block !important; }

#reportsView.show .reports-toolbar, #reportsView.show .all-demands-title button { display: none !important; }
}

.history-horizontal { margin: 12px; border: 1px solid rgb(220, 229, 225); border-radius: 8px; background: rgb(255, 255, 255); overflow: hidden; }

.history-horizontal-head { display: flex; justify-content: space-between; align-items: center; padding: 9px 12px; border-bottom: 1px solid rgb(229, 235, 232); background: rgb(250, 252, 252); }

.history-horizontal-head b { color: rgb(45, 65, 59); font-size: 10.5px; letter-spacing: 0.015em; }

.history-horizontal-head span { color: rgb(123, 135, 131); font-size: 9px; }

.history-track { display: grid; grid-template-columns: repeat(7, minmax(110px, 1fr)); gap: 0px; padding: 14px 16px 12px; overflow-x: auto; }

.history-step { position: relative; min-width: 110px; text-align: center; padding: 0px 7px; }

.history-step::before, .history-step::after { content: ""; position: absolute; top: 39px; height: 2px; background: rgb(216, 223, 220); z-index: 0; }

.history-step::before { left: 0px; right: 50%; }

.history-step::after { left: 50%; right: 0px; }

.history-step:first-child::before, .history-step:last-child::after { display: none; }

.history-step.done::before, .history-step.done::after { background: rgb(45, 139, 87); }

.history-step.active::before { background: rgb(45, 139, 87); }

.history-date { min-height: 30px; color: rgb(54, 72, 66); font-size: 9px; font-weight: 700; line-height: 1.15; }

.history-date small { display: block; margin-top: 2px; color: rgb(111, 124, 120); font-size: 8.5px; font-weight: 500; }

.history-node { position: relative; z-index: 2; height: 22px; display: flex; justify-content: center; align-items: center; margin: 0px auto 5px; }

.history-node span { display: flex; align-items: center; justify-content: center; width: 19px; height: 19px; border-radius: 50%; border: 2px solid rgb(201, 210, 206); background: rgb(255, 255, 255); color: rgb(255, 255, 255); font-size: 9px; font-weight: 900; }

.history-step.done .history-node span { background: rgb(45, 139, 87); border-color: rgb(45, 139, 87); }

.history-step.active .history-node span { background: rgb(31, 111, 80); border-color: rgb(31, 111, 80); box-shadow: rgb(231, 242, 237) 0px 0px 0px 3px; }

.history-step.pending .history-node span { background: rgb(255, 255, 255); border-color: rgb(200, 209, 205); }

.history-label { min-height: 30px; color: rgb(40, 59, 53); font-size: 9.2px; font-weight: 800; line-height: 1.2; }

.history-person { margin-top: 3px; color: rgb(123, 135, 131); font-size: 8.2px; line-height: 1.15; }

.history-details { border-top: 1px solid rgb(237, 241, 239); background: rgb(252, 253, 253); }

.history-details summary { cursor: pointer; padding: 8px 12px; color: rgb(49, 95, 82); font-size: 9px; font-weight: 800; list-style: none; }

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

.history-details summary::after { content: "＋"; float: right; color: rgb(111, 124, 120); }

.history-details[open] summary::after { content: "−"; }

.history-detail-list { padding: 0px 12px 10px; }

.history-detail-list > div { padding: 7px 0px; border-top: 1px solid rgb(237, 241, 239); }

.history-detail-list b { display: block; color: rgb(46, 64, 58); font-size: 9.5px; }

.history-detail-list span { display: block; margin-top: 2px; color: rgb(122, 134, 130); font-size: 8.3px; }

.history-detail-list p { margin: 3px 0px 0px; color: rgb(89, 103, 98); font-size: 8.8px; line-height: 1.3; }

@media (max-width: 1000px) {
.history-track { grid-template-columns: repeat(7, 130px); }
}

.follow-charge-status { display: flex; flex-direction: column; margin-bottom: 5px; }

.follow-charge-status b { font-size: 9px; color: rgb(8, 127, 91); }

.follow-charge-status small { font-size: 8.5px; color: rgb(82, 97, 93); }

.follow-charge-status span { font-size: 8px; color: rgb(122, 134, 130); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.follow-charge-none { display: block; margin-bottom: 5px; color: rgb(139, 148, 145); font-size: 8.8px; }

.follow-charge-btn { cursor: pointer; padding: 5px 7px !important; border: 1px solid rgb(215, 178, 90) !important; border-radius: 5px !important; background: rgb(255, 250, 240) !important; color: rgb(125, 90, 0) !important; font-size: 8.5px !important; font-weight: 800 !important; }

.follow-charge-btn:hover { background: rgb(255, 242, 207) !important; }

.main-dashboard, .all-demands-page, #workflowView, #reportsView { padding-bottom: 10px; }

.workspace { gap: 14px !important; margin-top: 14px !important; }

.panel { border-radius: 9px !important; }

.detail-summary { padding: 14px 16px !important; }

.summary-grid div { padding: 6px 4px !important; min-height: 29px !important; }

.section { margin: 12px !important; }

.section-title { padding: 8px 11px !important; }

.section-body { padding: 10px 12px !important; }

.field-row { margin: 8px 0px !important; }

.demand-tabs { margin-top: 2px !important; }

.demand-tab-body { padding-top: 2px !important; }

.btn, .actions button, .follow-table button, .workflow-table button, .all-demands-page button { min-height: 30px; transition: background 0.15s, border-color 0.15s, transform 0.05s; border-radius: 6px !important; font-weight: 800 !important; line-height: 1.1 !important; }

.btn:active, .actions button:active, .follow-table button:active { transform: translateY(1px); }

.actions { display: flex !important; gap: 8px !important; justify-content: flex-end !important; align-items: center !important; padding: 11px 12px 13px !important; border-top: 1px solid rgb(237, 241, 239) !important; background: rgb(251, 252, 252) !important; }

.actions .btn, .actions button { padding: 7px 11px !important; }

.actions .btn.purple, .actions button[onclick*="abrirEncerramentoDemanda"] { background: rgb(108, 74, 161) !important; border-color: rgb(108, 74, 161) !important; color: rgb(255, 255, 255) !important; }

.actions .btn.red, .actions button[onclick*="delDemand"] { background: rgb(255, 255, 255) !important; border: 1px solid rgb(216, 169, 164) !important; color: rgb(165, 50, 41) !important; }

.actions .btn.red:hover, .actions button[onclick*="delDemand"]:hover { background: rgb(255, 244, 243) !important; }

.history-horizontal { margin: 12px !important; border-radius: 9px !important; }

.history-horizontal-head { padding: 9px 12px !important; }

.history-track { padding: 12px 14px 11px !important; }

.history-label { font-size: 9px !important; }

.history-person { font-size: 8px !important; }

.follow-panel { margin-top: 14px !important; border-radius: 9px !important; }

.follow-head { padding: 10px 12px !important; background: rgb(250, 252, 252) !important; border-bottom: 1px solid rgb(227, 233, 230) !important; }

.follow-head h3 { margin: 0px !important; font-size: 11.5px !important; color: rgb(49, 95, 82) !important; letter-spacing: 0.01em !important; }

.follow-head span { font-size: 9.5px !important; color: rgb(118, 129, 125) !important; }

.follow-panel .tablewrap { max-height: 330px !important; }

.follow-table { font-size: 9px !important; }

.follow-table th { padding: 7px 8px !important; font-size: 8.5px !important; white-space: nowrap !important; }

.follow-table td { padding: 7px 8px !important; vertical-align: top !important; line-height: 1.25 !important; }

.follow-table td:nth-child(1) { width: 76px !important; }

.follow-table td:nth-child(2) { width: 110px !important; }

.follow-table td:nth-child(4), .follow-table td:nth-child(5) { width: 82px !important; white-space: nowrap !important; }

.follow-table td:nth-child(6) { min-width: 165px !important; }

.follow-table td:nth-child(7) { width: 90px !important; white-space: nowrap !important; }

.follow-table td:last-child { width: 92px !important; }

.follow-table tbody tr:hover { background: rgb(251, 252, 252) !important; }

.follow-charge-status { gap: 1px !important; margin-bottom: 4px !important; min-width: 135px !important; }

.follow-charge-status b { font-size: 8.6px !important; }

.follow-charge-status small { font-size: 8px !important; }

.follow-charge-status span { font-size: 7.8px !important; max-width: 180px !important; }

.follow-charge-none { font-size: 8.2px !important; margin-bottom: 4px !important; }

.follow-charge-btn { min-height: 26px !important; padding: 4px 7px !important; font-size: 8px !important; border-radius: 5px !important; }

.wait-days { display: inline-flex !important; align-items: center !important; min-height: 22px !important; padding: 3px 6px !important; border-radius: 10px !important; background: rgb(242, 244, 243) !important; color: rgb(78, 95, 89) !important; font-size: 8px !important; font-weight: 800 !important; }

.follow-table td:last-child button { min-height: 26px !important; padding: 4px 7px !important; background: rgb(255, 255, 255) !important; border: 1px solid rgb(205, 219, 214) !important; color: rgb(49, 95, 82) !important; font-size: 8px !important; }

.follow-table td:last-child button:hover { background: rgb(243, 248, 246) !important; }

.tablewrap { border-radius: 7px !important; }

table th { font-weight: 900 !important; }

table td { line-height: 1.25 !important; }

@media (max-width: 1100px) {
.follow-panel .tablewrap { overflow-x: auto !important; }

.follow-table { min-width: 980px !important; }
}

.login-overlay { position: fixed; inset: 0px; background: radial-gradient(circle, rgb(0, 58, 53) 0%, rgb(0, 36, 33) 100%); display: none; align-items: center; justify-content: center; z-index: 10000; padding: 20px; }

.needs-login-overlay .login-overlay { display: flex !important; }

.login-box { background: rgb(255, 255, 255); width: 100%; max-width: 420px; border-radius: 10px; box-shadow: rgba(0, 0, 0, 0.35) 0px 12px 35px; overflow: hidden; border: 1px solid rgb(201, 215, 211); }

.login-head { background: linear-gradient(rgb(0, 75, 67), rgb(0, 58, 53)); color: rgb(255, 255, 255); padding: 24px 20px 18px; text-align: center; }

.login-logo { width: 75px; height: 65px; object-fit: contain; margin-bottom: 8px; }

.login-head h2 { margin: 0px; font-size: 13px; letter-spacing: 0.05em; font-weight: 800; color: rgb(230, 244, 241); }

.login-head span { display: block; font-size: 11px; margin-top: 4px; opacity: 0.85; }

.login-form { padding: 24px 22px 18px; }

.login-field { margin-bottom: 14px; }

.login-field label { display: block; font-size: 11px; font-weight: bold; margin-bottom: 5px; color: rgb(51, 65, 85); }

.login-field input { width: 100%; padding: 10px; border: 1px solid rgb(203, 213, 218); border-radius: 6px; font-size: 13px; box-sizing: border-box; }

.login-field input:focus { outline: none; border-color: rgb(8, 127, 91); box-shadow: rgba(8, 127, 91, 0.15) 0px 0px 0px 3px; }

.login-btn { width: 100%; padding: 11px; font-size: 13px; font-weight: bold; border-radius: 6px; cursor: pointer; margin-top: 6px; }

.login-error { background: rgb(255, 232, 232); color: rgb(165, 38, 38); border: 1px solid rgb(239, 188, 188); padding: 8px 12px; border-radius: 6px; font-size: 11px; font-weight: bold; margin-bottom: 12px; }

.login-footer { padding: 12px; text-align: center; background: rgb(248, 250, 249); border-top: 1px solid rgb(238, 242, 241); color: rgb(100, 116, 139); font-size: 10px; }

#dashboardView .workspace { grid-template-columns: minmax(0px, 1fr) !important; align-items: start !important; }

#dashboardView .preview-panel { position: static !important; width: 100% !important; max-width: none !important; margin-top: 0px !important; }

#dashboardView .preview-panel .viewer-body { height: auto !important; min-height: 650px !important; max-height: none !important; overflow: auto !important; }

@media print {
body.printing-report #printArea { color: rgb(17, 17, 17); display: block !important; position: static !important; width: auto !important; padding: 15mm !important; }

body.printing-report #printArea * { overflow: visible !important; max-height: none !important; }

body.printing-report #printArea table { width: 100%; font-size: 10pt; border-collapse: collapse; }

body.printing-report #printArea th, body.printing-report #printArea td { padding: 5px; border: 1px solid rgb(170, 170, 170); }

body.printing-report #printArea thead { display: table-header-group; }

body.printing-report #printArea tr { break-inside: avoid; }

body.printing-report #printArea .reports-grid { display: block; }
}
