.citizen-workspace { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 48px; color: #293239; }
.citizen-workspace * { box-sizing: border-box; }
.citizen-workspace h1 { font-size: 30px; line-height: 1.2; letter-spacing: 0; margin: 6px 0 12px; overflow-wrap: anywhere; }
.citizen-workspace h2 { font-size: 20px; margin: 0 0 18px; letter-spacing: 0; }
.citizen-breadcrumb, .citizen-eyebrow, .citizen-note { font-size: 13px; color: #56636c; line-height: 1.6; }
.citizen-heading { border-bottom: 3px solid #1351b4; padding: 16px 0; margin-bottom: 22px; }
.citizen-heading p { margin: 0 0 8px; }
.citizen-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin: 22px 0; }
.citizen-stats > div { border-left: 3px solid #1351b4; padding: 4px 12px; }
.citizen-stats > div:nth-child(3) { border-color: #a26008; }
.citizen-stats > div:nth-child(4) { border-color: #237347; }
.citizen-stats strong, .citizen-stats span { display: block; }
.citizen-stats strong { font-size: 26px; }
.citizen-stats span { font-size: 13px; color: #56636c; }
.citizen-tabs { display: flex; flex-wrap: wrap; gap: 8px 24px; border-bottom: 1px solid #ccd5dc; margin-top: 28px; }
.citizen-tabs a { color: #34454f; padding: 14px 0; font-weight: 700; font-size: 14px; text-decoration: none; border-bottom: 3px solid transparent; }
.citizen-tabs a[aria-current="page"] { color: #1351b4; border-bottom-color: #1351b4; }
.citizen-section { padding: 24px 0; border-bottom: 1px solid #d8e0e5; scroll-margin-top: 20px; }
.citizen-section[hidden], .citizen-form [hidden] { display: none; }
.citizen-form { display: grid; gap: 18px; max-width: 900px; }
.citizen-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.citizen-form label { display: grid; gap: 7px; font-size: 14px; font-weight: 600; min-width: 0; }
.citizen-form input:not([type="checkbox"]), .citizen-form select, .citizen-form textarea { width: 100%; min-width: 0; min-height: 40px; padding: 9px 10px; border: 1px solid #aebdc9; border-radius: 4px; font: inherit; font-weight: 400; color: #24292e; background: white; }
.citizen-form textarea { resize: vertical; }
.citizen-form fieldset { margin: 0; padding: 16px 0; border: 0; border-top: 1px solid #d8e0e5; }
.citizen-form legend { font-size: 15px; font-weight: 700; padding-right: 12px; }
.citizen-form .citizen-check { display: flex; align-items: center; gap: 10px; }
.citizen-check input { width: 18px; height: 18px; flex-shrink: 0; }
.citizen-button { display: inline-flex; align-items: center; justify-content: center; width: fit-content; max-width: 100%; min-height: 42px; padding: 10px 18px; border: 0; border-radius: 4px; background: #1351b4; color: #fff; font: inherit; font-size: 14px; font-weight: 700; text-decoration: none; cursor: pointer; }
.citizen-workspace a:focus-visible, .citizen-workspace button:focus-visible, .citizen-workspace input:focus-visible, .citizen-workspace select:focus-visible, .citizen-workspace textarea:focus-visible { outline: 3px solid #16838e; outline-offset: 3px; }
.citizen-feedback, .citizen-errors { padding: 16px; margin: 18px 0; background: #eaf6ee; border-left: 4px solid #237347; overflow-wrap: anywhere; }
.citizen-errors { background: #fff2ef; border-color: #b42318; }
.citizen-list-item { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 16px 0; border-bottom: 1px solid #d8e0e5; color: #1351b4; overflow-wrap: anywhere; }
.citizen-metadata dt { color: #56636c; font-size: 13px; }
.citizen-metadata dd { margin: 4px 0; font-size: 15px; overflow-wrap: anywhere; }
.citizen-text { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; }
.citizen-history { padding-left: 22px; }
.citizen-history li { padding: 0 0 18px 8px; }
.citizen-history time { display: block; color: #56636c; font-size: 12px; }
.citizen-history p { margin: 5px 0; }
.citizen-table-scroll { overflow-x: auto; }
.citizen-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.citizen-table th, .citizen-table td { text-align: left; padding: 12px 10px; border-bottom: 1px solid #d8e0e5; vertical-align: top; }
.citizen-table small { display: block; margin-top: 4px; }
.citizen-table a { color: #1351b4; }
.citizen-filter { display: flex; align-items: end; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; max-width: none; }
.citizen-filter label { flex: 1 1 160px; }
.citizen-admin-actions { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 20px; font-size: 14px; }
main.wrap.citizen-workspace { max-width: none; }
@media (max-width: 650px) { .citizen-grid { grid-template-columns: 1fr; } .citizen-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .citizen-workspace h1 { font-size: 26px; } .citizen-tabs { gap: 12px; } }
@media print { .citizen-admin-actions, .admin-sidebar, .citizen-filter { display: none; } main.wrap.citizen-workspace { margin: 0; width: 100%; } }
.citizen-landing .citizen-heading { padding:24px; background:var(--theme-primary,#1351b4); color:var(--theme-primary-ink,#fff); border:0; margin-bottom:20px; }
body .citizen-landing .citizen-heading h1, .citizen-landing .citizen-heading .citizen-eyebrow { color:inherit; }
.citizen-landing .citizen-stats { gap:12px; }
.citizen-landing .citizen-stats > div { border:1px solid #d8e0e5; border-radius:6px; background:#fff; padding:14px 16px; display:flex; flex-direction:column-reverse; gap:4px; }
.citizen-landing .citizen-stats > div:nth-child(2) { background:#fff8e8; border-color:#e9d4a5; color:#805400; }
.citizen-landing .citizen-stats > div:nth-child(3) { background:#eef5ff; border-color:#c6d9f3; color:#22548c; }
.citizen-landing .citizen-stats > div:nth-child(4) { background:#eef8f0; border-color:#bdddc7; color:#28663c; }
.citizen-landing .citizen-stats > div:nth-child(5) { background:#fff0f2; border-color:#e9c7ce; color:#962c42; }
.citizen-landing .citizen-stats span { color:inherit; }
.citizen-landing .citizen-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; background:#fff; border:1px solid #d8e0e5; }
.citizen-landing .citizen-tabs a { text-align:center; padding:16px 10px; border-bottom-width:4px; }
.citizen-landing .citizen-tabs a[aria-current="page"] { color:var(--theme-primary,#1351b4); border-bottom-color:var(--theme-primary,#1351b4); background:#f1f7f4; }
.citizen-landing .citizen-section { background:#fff; padding:24px; }
.citizen-compose-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(220px,1fr); gap:32px; }
.citizen-compose-layout > div { min-width:0; }
.citizen-guidance { border-left:1px solid #d8e0e5; padding-left:24px; font-size:14px; line-height:1.7; }
.citizen-guidance h2 { font-size:17px; margin:0 0 12px; }
.citizen-guidance ul { margin:0 0 28px; padding-left:18px; }
.citizen-guidance li { margin-bottom:10px; }
.citizen-landing .citizen-check { background:#fff8e8; padding:12px; border-left:3px solid #c78d25; font-weight:400; }
.citizen-landing .citizen-form { gap:16px; }
.citizen-landing .citizen-button { background:var(--theme-primary,#1351b4); color:var(--theme-primary-ink,#fff); }
.citizen-landing input[type=file] { border-style:dashed; background:#f8faf9; }
@media(max-width:800px) { .citizen-compose-layout { grid-template-columns:1fr; } .citizen-guidance { border-left:0; border-top:1px solid #d8e0e5; padding:20px 0 0; } }
@media(max-width:500px) { .citizen-landing .citizen-tabs { grid-template-columns:1fr; } .citizen-landing .citizen-section,.citizen-landing .citizen-heading { padding:18px 14px; } }

/* Public service workspace; administrative views keep their existing layout. */
.citizen-modern { --citizen-blue:#1854aa; --citizen-green:#206e56; --citizen-line:#dce3e7; --citizen-muted:#56656d; color:#25343b; }
.citizen-modern svg { width:20px; height:20px; flex-shrink:0; }
.citizen-modern a { color:var(--citizen-blue); }
.citizen-modern .citizen-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:28px 0; background:transparent; color:#25343b; border-bottom:1px solid var(--citizen-line); margin-bottom:0; }
body.portal-inner .citizen-modern h1 { color:#25343b; font-size:32px; line-height:1.25; max-width:850px; margin:8px 0 12px; }
.citizen-modern .citizen-eyebrow { color:var(--citizen-green); font-size:12px; font-weight:700; margin:0 0 8px; }
.citizen-modern .citizen-heading > div > p:last-child { font-size:15px; line-height:1.6; color:var(--citizen-muted); }
.citizen-official { display:inline-flex; align-items:center; gap:8px; color:var(--citizen-green); font-size:13px; font-weight:600; padding:10px 0; white-space:nowrap; }
.citizen-modern .citizen-stats { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin:18px 0; padding:0; border:0; }
.citizen-modern .citizen-stats > div { display:flex; flex-direction:column; align-items:flex-start; gap:5px; padding:16px; min-width:0; position:relative; background:#fff; border:1px solid #ccd7df; border-radius:6px; color:#34464e; }
.citizen-modern .citizen-stats strong { font-size:30px; line-height:1.2; padding-right:32px; }
.citizen-modern .citizen-stats span { font-size:13px; color:inherit; }
.citizen-modern .citizen-stats .citizen-stat-icon { position:absolute; right:12px; top:14px; display:flex; align-items:center; justify-content:center; width:30px; height:30px; opacity:.85; }
.citizen-modern .citizen-stat-icon svg { width:24px; height:24px; }
.citizen-modern .citizen-stats > div:nth-child(2) { background:#fff8e8; border-color:#e9d4a5; color:#805400; }
.citizen-modern .citizen-stats > div:nth-child(3) { background:#eef5ff; border-color:#c6d9f3; color:#22548c; }
.citizen-modern .citizen-stats > div:nth-child(4) { background:#eef8f0; border-color:#bdddc7; color:#28663c; }
.citizen-modern .citizen-stats > div:nth-child(5) { background:#fff0f2; border-color:#e9c7ce; color:#962c42; }
.citizen-modern .citizen-tabs { display:flex; flex-wrap:nowrap; gap:24px; background:transparent; border:0; border-bottom:1px solid #bccbd3; margin-top:16px; }
.citizen-modern .citizen-tabs a { flex:0 1 auto; padding:16px 4px; color:#51616b; background:transparent; border-bottom:3px solid transparent; line-height:1.4; }
.citizen-modern .citizen-tabs a[aria-current=page] { color:var(--citizen-blue); background:transparent; border-color:var(--citizen-blue); }
.citizen-modern .citizen-tabs a { display:flex; align-items:center; gap:8px; }
.citizen-landing.citizen-modern .citizen-heading { padding:18px 0; }
.citizen-landing.citizen-modern .citizen-section { padding:20px 0; }
.citizen-landing.citizen-modern .citizen-section-heading { margin-bottom:16px; }
.citizen-landing.citizen-modern .citizen-form { gap:14px; }
.citizen-landing.citizen-modern .citizen-form fieldset { padding:12px 0 0; }
.citizen-landing.citizen-modern .citizen-grid { gap:12px 16px; }
.citizen-landing.citizen-modern .citizen-form label { gap:6px; }
.citizen-landing.citizen-modern .citizen-form :is(input:not([type=checkbox]),select,textarea) { min-height:44px; padding:10px 12px; font-size:14px; }
.citizen-landing.citizen-modern .citizen-form select { padding-right:36px; }
.citizen-landing.citizen-modern .citizen-form textarea { min-height:130px; }
.citizen-landing.citizen-modern .citizen-upload { padding-top:12px; gap:8px; }
.citizen-landing.citizen-modern .citizen-submit-row { gap:12px; }
.citizen-followup-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; }
.citizen-followup-layout > div { min-width:0; }
.citizen-session-list { border-left:1px solid var(--citizen-line); padding-left:28px; }
.citizen-antibot { width:100%; max-width:400px; min-height:65px; }
.citizen-antibot .citizen-field-error { display:block; margin-top:8px; }
.citizen-modern .citizen-section { background:transparent; padding:28px 0; border-color:var(--citizen-line); }
.citizen-section-heading { margin-bottom:28px; }
.citizen-modern h2 { font-size:21px; line-height:1.35; color:#25343b; margin-bottom:20px; }
.citizen-modern .citizen-section-heading h2 { margin-bottom:8px; }
.citizen-modern .citizen-compose-layout { grid-template-columns:minmax(0,1fr) 260px; gap:48px; }
.citizen-modern .citizen-form { gap:24px; max-width:none; }
.citizen-modern .citizen-form fieldset { border-top:1px solid var(--citizen-line); padding:24px 0 0; min-width:0; }
.citizen-modern .citizen-form legend { display:flex; align-items:center; gap:10px; font-size:16px; color:#25343b; }
.citizen-step { display:inline-flex; align-items:center; justify-content:center; width:25px; height:25px; border-radius:50%; background:#e8eef8; color:var(--citizen-blue); font-size:12px; }
.citizen-modern .citizen-grid { gap:20px; }
.citizen-modern .citizen-form label { gap:8px; position:relative; line-height:1.4; font-size:14px; }
.citizen-modern .citizen-form :is(input:not([type=checkbox]),select,textarea) { appearance:none; min-height:46px; border:1px solid #b9c7d1; border-radius:6px; padding:12px; font-size:15px; line-height:1.45; background-color:#fff; box-shadow:0 1px 2px #142b3a05; }
.citizen-modern .citizen-form select { padding-right:36px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2356656d' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; }
.citizen-modern .citizen-form [aria-invalid=true] { border-color:#ac303a; }
.citizen-modern .citizen-field-error { font-size:12px; color:#a12535; font-weight:500; }
.citizen-modern .citizen-field-error:empty { display:none; }
.citizen-modern .citizen-optional { font-size:12px; color:var(--citizen-muted); font-weight:400; }
.citizen-modern label > .citizen-optional { position:absolute; right:0; top:0; }
.citizen-modern .citizen-note { margin:0; font-size:12px; font-weight:400; }
.citizen-modern .citizen-check { background:#eef5f2; border:1px solid #c9ded3; border-radius:6px; padding:14px; }
.citizen-modern #anonymous-note { margin-top:8px; }
.citizen-modern .citizen-upload { border-top:1px solid var(--citizen-line); padding-top:20px; display:grid; gap:10px; }
.citizen-modern .citizen-upload input { background:#f9fbfc; border-style:dashed; font-size:13px; padding:16px; }
.citizen-modern input::file-selector-button { border:1px solid #b9c7d1; border-radius:4px; padding:8px 10px; background:#fff; color:#34464e; margin-right:12px; cursor:pointer; }
.citizen-file-selection { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; background:#edf4f0; border-radius:4px; font-size:13px; }
#citizen-file-name { overflow-wrap:anywhere; min-width:0; }
.citizen-modern [hidden] { display:none !important; }
.citizen-modern .citizen-button { display:inline-flex; gap:9px; min-height:44px; padding:12px 18px; border-radius:6px; background:var(--citizen-blue); color:#fff; line-height:1.4; border:1px solid transparent; }
.citizen-modern .citizen-button:hover { background:#12458d; }
.citizen-modern .citizen-button-secondary { background:#fff; color:#34464e; border-color:#c8d3da; }
.citizen-modern .citizen-button-secondary:hover { background:#eef3f6; }
.citizen-submit-row { display:grid; justify-items:start; gap:18px; padding-top:4px; }
.citizen-modern .citizen-guidance { border:0; border-left:1px solid var(--citizen-line); padding:4px 0 0 28px; font-size:13px; color:var(--citizen-muted); }
.citizen-guidance-icon { display:flex; align-items:center; justify-content:center; width:42px; height:42px; color:var(--citizen-green); background:#e5f0e9; border-radius:6px; margin-bottom:16px; }
.citizen-modern .citizen-guidance h2 { font-size:16px; margin-bottom:12px; }
.citizen-modern .citizen-guidance ul { padding-left:17px; margin-bottom:32px; }
.citizen-modern .citizen-list-item { align-items:center; text-decoration:none; }
.citizen-modern .citizen-list-item strong,.citizen-modern .citizen-list-item small { display:block; }
.citizen-modern .citizen-list-item small { color:var(--citizen-muted); margin-bottom:8px; font-size:12px; }
.citizen-empty { padding:36px 0; text-align:center; color:var(--citizen-muted); font-size:14px; }
.citizen-empty > svg { width:32px; height:32px; color:#72818b; }
.citizen-empty h3 { font-size:17px; color:#34464e; }
.citizen-detail-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:13px; }
.citizen-print-heading { display:none; }
.citizen-detail-toolbar a { text-decoration:none; }
.citizen-status { display:inline-flex; align-items:center; gap:8px; padding:7px 11px; border-radius:4px; background:#edf2f5; color:#42545e; font-size:12px; font-weight:700; line-height:1.4; white-space:nowrap; }
.citizen-status::before { content:''; width:6px; height:6px; border-radius:50%; background:currentColor; flex-shrink:0; }
.citizen-status-recebido { background:#fff3d9; color:#785410; }
.citizen-status-em_analise { background:#e9f1ff; color:#2359a5; }
.citizen-status-respondido { background:#e7f3ec; color:#206547; }
.citizen-status-indeferido { background:#fbecef; color:#9b2f43; }
.citizen-protocol { display:flex; align-items:center; flex-wrap:wrap; gap:8px; color:var(--citizen-muted); font-size:13px; }
.citizen-protocol code { color:#34464e; font-size:13px; overflow-wrap:anywhere; }
.citizen-modern .citizen-icon-button { display:inline-flex; align-items:center; justify-content:center; border:1px solid #c5d2da; border-radius:4px; background:#fff; color:#425765; width:36px; height:36px; flex-shrink:0; cursor:pointer; font-size:22px; padding:6px; }
.citizen-modern .citizen-icon-button:hover { background:#eaf1f6; }
.citizen-copy-feedback { min-height:20px; margin:8px 0 0; color:var(--citizen-green); font-size:12px; }
.citizen-access-code { padding:20px; border-left:3px solid var(--citizen-green); background:#eaf4ee; margin:20px 0; }
.citizen-access-code h2 { font-size:18px; margin:0 0 12px; }
.citizen-access-code p { font-size:13px; line-height:1.6; }
.citizen-access-code .citizen-protocol code { font-size:17px; }
.citizen-modern .citizen-metadata { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:22px 0; gap:20px; border-bottom:1px solid var(--citizen-line); }
.citizen-modern .citizen-metadata dt { font-size:12px; }
.citizen-modern .citizen-metadata dd { font-size:14px; line-height:1.5; font-weight:600; margin:6px 0 0; }
.citizen-detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:48px; }
.citizen-detail-main,.citizen-detail-history { min-width:0; }
.citizen-detail-history { border-left:1px solid var(--citizen-line); padding-left:28px; margin-top:28px; }
.citizen-detail-history .citizen-section { padding-top:0; border:0; }
.citizen-detail-history h2 { font-size:18px; }
.citizen-detail-history .citizen-history { list-style:none; padding:0 0 0 8px; }
.citizen-detail-history li { border-left:1px solid #c9d8d1; padding:0 0 28px 22px; position:relative; font-size:13px; line-height:1.6; }
.citizen-detail-history li::before { content:''; position:absolute; left:-5px; top:4px; width:9px; height:9px; border-radius:50%; background:#fff; border:2px solid var(--citizen-green); box-sizing:border-box; }
.citizen-detail-history li:first-child::before { background:var(--citizen-green); }
.citizen-detail-history li:last-child { border-left-color:transparent; }
.citizen-detail-history time { margin-bottom:6px; }
.citizen-detail .citizen-text { font-size:15px; }
.citizen-attachment-link { display:inline-flex; align-items:center; gap:10px; padding:12px 0; font-size:13px; text-decoration:none; font-weight:600; }
.citizen-response { border-left:3px solid var(--citizen-green); padding-left:20px !important; }
.citizen-pending p { color:var(--citizen-muted); font-size:14px; line-height:1.6; }
@media(max-width:850px) { .citizen-modern .citizen-compose-layout,.citizen-detail-layout { grid-template-columns:1fr; gap:28px; } .citizen-modern .citizen-guidance { border-left:0; border-top:1px solid var(--citizen-line); padding:24px 0; } .citizen-detail-history { border-left:0; padding-left:0; margin-top:0; } .citizen-modern .citizen-metadata { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:550px) { body.portal-inner .citizen-modern h1 { font-size:26px; } .citizen-modern .citizen-heading { flex-direction:column; gap:12px; padding:20px 0; } .citizen-modern .citizen-tabs { gap:12px; } .citizen-modern .citizen-tabs a { flex:1; text-align:left; padding:14px 0; font-size:12px; } .citizen-modern .citizen-grid { grid-template-columns:1fr; } .citizen-modern .citizen-metadata { grid-template-columns:repeat(2,minmax(0,1fr)); } .citizen-modern .citizen-section { padding:24px 0; } .citizen-detail-toolbar { flex-wrap:wrap; } .citizen-modern .citizen-button { font-size:13px; } .citizen-official { padding:0; } }
@media print { body:has(.citizen-detail) { background:#fff !important; } body:has(.citizen-detail) > header,body:has(.citizen-detail) > footer,body:has(.citizen-detail) nav,body:has(.citizen-detail) .a11y-widget,.citizen-detail-toolbar,.citizen-detail .citizen-icon-button,.citizen-detail .citizen-copy-feedback,.citizen-detail form { display:none !important; } .citizen-detail { width:100%; padding:0; } .citizen-detail-layout { display:block; } .citizen-detail-history { border:0; padding:0; margin-top:24px; } .citizen-modern .citizen-section { break-inside:avoid; } .citizen-modern .citizen-access-code { background:none; } }
@media print { body:has(.citizen-detail) .portal-access-top,body:has(.citizen-detail) [class*=asw-],body:has(.citizen-detail) .portal-announcement,body:has(.citizen-detail) dialog { display:none !important; } .citizen-print-heading { display:block; font-size:12px; border-bottom:1px solid #aaa; padding-bottom:12px; } }
@media(max-width:850px) { .citizen-followup-layout { grid-template-columns:1fr; gap:24px; } .citizen-session-list { border-left:0; border-top:1px solid var(--citizen-line); padding:20px 0 0; } }
@media(max-width:650px) { .citizen-modern .citizen-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .citizen-modern .citizen-stats > div { padding:12px; } .citizen-modern .citizen-stats strong { font-size:26px; } .citizen-modern .citizen-stats > div:last-child { grid-column:1 / -1; } .citizen-modern .citizen-tabs { gap:16px; } .citizen-modern .citizen-tabs a { min-height:48px; } }
