/* =================================================================
   FS Emendas Estaduais — Public
   ================================================================= */

.fsee-wrap{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    color:#1a1a1a;
    margin:24px 0;
    --fsee-primary:#2563eb;
    --fsee-header:#0b1830;
    --fsee-dark:#0f3a3a;
    --fsee-dark-2:#155555;
}

/* ===== BREADCRUMB (acima do header) ===== */
.fsee-breadcrumb{
    display:flex;align-items:center;justify-content:space-between;
    flex-wrap:wrap;gap:10px;
    background:#f1f5fb;border:1px solid #e3eaf3;
    border-radius:10px;padding:11px 18px;margin-bottom:14px;
}
.fsee-bc-left{display:flex;align-items:center;gap:8px;font-size:14px;min-width:0;flex:1;}
.fsee-bc-home{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--fsee-primary,#2563eb);text-decoration:none;font-weight:500;
}
.fsee-bc-home:hover{text-decoration:underline;}
.fsee-bc-sep{color:#94a3b8;font-size:18px;line-height:1;}
.fsee-bc-current{
    color:#0f172a;font-weight:500;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    max-width:60vw;
}
.fsee-bc-last{
    display:inline-flex;align-items:center;gap:6px;
    background:#fff;border:1px solid #d8e0ec;color:#334155;
    border-radius:999px;padding:6px 14px;font-size:13px;
    cursor:pointer;font-family:inherit;
    transition:border-color .15s, color .15s, background .15s;
    max-width:520px;
}
.fsee-bc-last:hover{
    background:#eff6ff;border-color:var(--fsee-primary,#2563eb);color:var(--fsee-primary,#2563eb);
}
.fsee-bc-last svg{color:var(--fsee-primary,#2563eb);flex-shrink:0;}
.fsee-bc-last-label{font-weight:600;color:#475569;flex-shrink:0;}
.fsee-bc-last:hover .fsee-bc-last-label{color:var(--fsee-primary,#2563eb);}
.fsee-bc-last-value{
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    max-width:300px;
}
.fsee-bc-last-date{color:#64748b;flex-shrink:0;}
.fsee-bc-last:hover .fsee-bc-last-date{color:var(--fsee-primary,#2563eb);}

/* ===== HEADER ===== */
.fsee-header{
    background:linear-gradient(135deg, var(--fsee-dark) 0%, var(--fsee-dark-2) 100%);
    color:#fff;
    border-radius:10px 10px 0 0;
    padding:14px 22px;
    display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.fsee-header-title{display:flex;align-items:center;gap:12px;}
.fsee-header-title h2{margin:0;font-size:18px;font-weight:600;color:#fff;line-height:1.2;}
.fsee-header-icon{
    display:inline-flex;align-items:center;justify-content:center;
    width:34px;height:34px;background:rgba(255,255,255,.12);border-radius:8px;color:#fff;
}
.fsee-header-right{display:flex;align-items:center;gap:10px;}
.fsee-header-label{color:rgba(255,255,255,.85);font-size:13px;font-weight:500;}
.fsee-header-right .fsee-input{
    background:#fff;border:none;border-radius:6px;padding:7px 12px;
    font-size:14px;min-width:140px;color:#0f172a;
}

/* ===== FILTROS ===== */
.fsee-filters{background:#fff;border:1px solid #e3eaf3;border-top:none;padding:18px 22px;}
.fsee-row{display:flex;gap:16px;margin-bottom:14px;}
.fsee-row:last-child{margin-bottom:0;}
.fsee-row-4 > .fsee-field{flex:1 1 0;min-width:0;}
.fsee-row-end{justify-content:flex-end;}
.fsee-field{display:flex;flex-direction:column;gap:5px;flex:1 1 0;min-width:0;}
.fsee-field-full{flex:1 1 100%;}
.fsee-field label{font-size:11px;font-weight:700;color:#64748b;letter-spacing:.04em;text-transform:uppercase;}
.fsee-input{
    width:100%;border:1px solid #d8dee9;border-radius:6px;padding:9px 12px;
    font-size:14px;background:#fff;color:#0f172a;box-sizing:border-box;
    transition:border-color .15s, box-shadow .15s;
}
.fsee-input:focus{border-color:var(--fsee-primary);outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.15);}
.fsee-input::placeholder{color:#94a3b8;}
.fsee-btn-clear{
    display:inline-flex;align-items:center;gap:6px;background:#fff;
    border:1px solid #d8dee9;color:#334155;padding:8px 14px;border-radius:6px;
    font-size:13px;font-weight:500;cursor:pointer;
    transition:background .15s, border-color .15s;
}
.fsee-btn-clear:hover{background:#f1f5f9;border-color:#94a3b8;}
.fsee-btn-clear span{font-size:16px;line-height:1;color:#ef4444;font-weight:700;}

/* ===== KPIs ===== */
.fsee-kpis{
    display:grid;grid-template-columns:repeat(5,1fr);gap:0;
    background:#fff;border:1px solid #e3eaf3;border-top:none;padding:16px 22px;
}
.fsee-kpi{padding:6px 14px;border-right:1px solid #eef2f7;}
.fsee-kpi:last-child{border-right:none;}
.fsee-kpi-label{font-size:11px;font-weight:700;color:#64748b;letter-spacing:.04em;margin-bottom:4px;}
.fsee-kpi-value{font-size:20px;font-weight:700;color:#1e3a8a;line-height:1.1;}

/* ===== EXPORT BAR ===== */
.fsee-export-bar{
    background:#fff;border:1px solid #e3eaf3;border-top:none;padding:14px 22px;
    display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.fsee-export-label{font-size:12px;font-weight:700;color:#475569;letter-spacing:.04em;margin-right:4px;}
.fsee-exp{
    display:inline-flex;align-items:center;gap:5px;background:#fff;
    border:1px solid #cbd5e1;color:#334155;padding:7px 14px;border-radius:6px;
    font-size:13px;font-weight:600;cursor:pointer;
    transition:transform .1s, box-shadow .15s, background .15s;
}
.fsee-exp:hover{background:#f8fafc;box-shadow:0 1px 4px rgba(15,23,42,.08);}
.fsee-exp:active{transform:translateY(1px);}
.fsee-exp-csv{color:#0ea5e9;border-color:#bae6fd;background:#f0f9ff;}
.fsee-exp-excel{color:#16a34a;border-color:#bbf7d0;background:#f0fdf4;}
.fsee-exp-json{color:#ca8a04;border-color:#fde68a;background:#fefce8;}
.fsee-exp-pdf{color:#dc2626;border-color:#fecaca;background:#fef2f2;}
.fsee-exp-print{background:var(--fsee-dark);color:#fff;border-color:var(--fsee-dark);}
.fsee-exp-print:hover{background:var(--fsee-dark-2);border-color:var(--fsee-dark-2);}
.fsee-count-info{margin-left:auto;font-size:12px;color:#64748b;font-style:italic;}

/* ===== CARD da TABELA ===== */
.fsee-card{
    background:#fff;border:1px solid #e3eaf3;border-top:none;
    border-radius:0 0 10px 10px;padding:14px 18px 18px;
}
.fsee-card .dt-buttons,
.fsee-card .dt-button.dt-hidden{display:none !important;}

/* ===== TABELA ===== */
.fsee-wrap table.fsee-table.dataTable{border-collapse:collapse !important;width:100% !important;margin-top:4px;table-layout:auto;}
.fsee-wrap table.fsee-table.dataTable thead th{
    background:var(--fsee-header,#0b1830);color:#fff;font-weight:600;
    font-size:12.5px;text-align:left;padding:10px 12px;border:none;
    line-height:1.25;white-space:nowrap;
}
.fsee-wrap table.fsee-table.dataTable thead th.fsee-num,
.fsee-wrap table.fsee-table.dataTable td.fsee-num{text-align:right;white-space:nowrap;}
.fsee-wrap table.fsee-table.dataTable tbody td{
    padding:9px 12px;border-bottom:1px solid #eef2f7;background:#f8fafc;
    font-size:13px;color:#1f2937;vertical-align:middle;line-height:1.4;
    white-space:nowrap;
}
.fsee-wrap table.fsee-table.dataTable tbody tr:nth-child(even) td{background:#fff;}
.fsee-wrap table.fsee-table.dataTable tbody tr:hover td{background:#eff6ff;}
.fsee-wrap table.fsee-table.dataTable td.fsee-empty,
.fsee-wrap table.fsee-table.dataTable td.dataTables_empty{
    text-align:center;color:#64748b;padding:28px 16px;background:#f8fafc;
}

/* Truncamento por coluna */
.fsee-trunc{
    display:inline-block;max-width:100%;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;
}
.fsee-wrap table.fsee-table.dataTable td.fsee-col-id{max-width:230px;}
.fsee-wrap table.fsee-table.dataTable td.fsee-col-id .fsee-trunc{max-width:210px;}
.fsee-wrap table.fsee-table.dataTable td.fsee-col-autoria{max-width:200px;}
.fsee-wrap table.fsee-table.dataTable td.fsee-col-autoria .fsee-trunc{max-width:180px;}

/* Info + paginação */
.fsee-wrap div.dataTables_wrapper .dataTables_info{color:#475569;font-size:13px;padding-top:14px;}
.fsee-wrap div.dataTables_wrapper .dataTables_paginate{padding-top:14px;}
.fsee-wrap div.dataTables_wrapper .dataTables_paginate .paginate_button{
    border:1px solid #cbd5e1 !important;border-radius:6px !important;margin:0 2px !important;
    padding:6px 12px !important;color:#334155 !important;background:#fff !important;
}
.fsee-wrap div.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.fsee-wrap div.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{
    background:var(--fsee-primary,#2563eb) !important;
    border-color:var(--fsee-primary,#2563eb) !important;color:#fff !important;
}
.fsee-wrap div.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.fsee-wrap div.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{
    color:#cbd5e1 !important;background:#fff !important;
}

/* Links e botões dentro da tabela */
.fsee-wrap .fsee-link{color:var(--fsee-primary,#2563eb);text-decoration:none;font-weight:500;}
.fsee-wrap .fsee-link:hover{text-decoration:underline;}
.fsee-wrap table.fsee-table.dataTable thead th.fsee-actions,
.fsee-wrap table.fsee-table.dataTable tbody td.fsee-actions{text-align:center;white-space:nowrap;}
.fsee-wrap td.fsee-actions .fsee-btn-ver{
    display:inline-flex;align-items:center;gap:4px;
    background:#16a34a;color:#fff;border:none;cursor:pointer;
    border-radius:5px;padding:5px 11px;font-size:12px;font-weight:600;line-height:1;
    transition:background .15s ease;font-family:inherit;
}
.fsee-wrap td.fsee-actions .fsee-btn-ver:hover,
.fsee-wrap td.fsee-actions .fsee-btn-ver:focus{background:#15803d;color:#fff;outline:none;}

/* DataTables Responsive */
.fsee-wrap table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
.fsee-wrap table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control{padding-left:30px !important;}
.fsee-wrap table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
.fsee-wrap table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before{
    top:50%;left:8px;transform:translateY(-50%);
    background-color:var(--fsee-primary,#2563eb) !important;
    border:none !important;box-shadow:none !important;color:#fff !important;
    height:18px;width:18px;line-height:18px;text-align:center;font-size:14px;margin-top:0 !important;
}
.fsee-wrap table.dataTable > tbody > tr.child ul.dtr-details{width:100%;}
.fsee-wrap table.dataTable > tbody > tr.child ul.dtr-details > li{padding:6px 0;border-bottom:1px dashed #e5e7eb;font-size:13px;}
.fsee-wrap table.dataTable > tbody > tr.child ul.dtr-details > li:last-child{border-bottom:none;}
.fsee-wrap table.dataTable > tbody > tr.child ul.dtr-details > li .dtr-title{font-weight:600;min-width:140px;color:#334155;}
.fsee-wrap table.dataTable > tbody > tr.child,
.fsee-wrap table.dataTable > tbody > tr.child td{background:#f1f5f9 !important;}

/* ===== MODAL ===== */
.fsee-modal{
    position:fixed;inset:0;z-index:99999;
    display:none;align-items:flex-start;justify-content:center;
    padding:5vh 16px;
}
.fsee-modal.is-open{display:flex;}
body.fsee-modal-open{overflow:hidden;}
.fsee-modal-backdrop{
    position:absolute;inset:0;background:rgba(15,23,42,.55);
    backdrop-filter:blur(2px);
}
.fsee-modal-dialog{
    position:relative;background:#fff;border-radius:10px;
    width:100%;max-width:780px;max-height:90vh;
    display:flex;flex-direction:column;
    box-shadow:0 24px 60px rgba(0,0,0,.25);
    animation:fsee-modal-in .2s ease;
}
@keyframes fsee-modal-in{
    from{opacity:0;transform:translateY(-12px);}
    to  {opacity:1;transform:translateY(0);}
}

.fsee-modal-header{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:14px 18px;
    background:linear-gradient(135deg, var(--fsee-dark) 0%, var(--fsee-dark-2) 100%);
    color:#fff;border-radius:10px 10px 0 0;
}
.fsee-modal-title{
    margin:0;font-size:15px;font-weight:600;color:#fff;line-height:1.3;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;
}
.fsee-modal-toolbar{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.fsee-modal-btn{
    display:inline-flex;align-items:center;gap:5px;
    background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.2);
    padding:5px 10px;border-radius:5px;font-size:12px;font-weight:600;
    cursor:pointer;font-family:inherit;transition:background .15s;
}
.fsee-modal-btn:hover{background:rgba(255,255,255,.24);}
.fsee-modal-close{padding:0;width:30px;height:30px;font-size:20px;line-height:1;justify-content:center;}

.fsee-modal-body{padding:16px 22px;overflow-y:auto;flex:1;}
.fsee-detail-list{margin:0;}
.fsee-detail-row{
    display:grid;grid-template-columns:230px 1fr;gap:12px;
    padding:10px 0;border-bottom:1px solid #eef2f7;
}
.fsee-detail-row:last-child{border-bottom:none;}
.fsee-detail-row dt{
    font-weight:600;color:#475569;font-size:13px;
    text-transform:uppercase;letter-spacing:.03em;line-height:1.5;
}
.fsee-detail-row dd{
    margin:0;color:#1f2937;font-size:14px;line-height:1.5;word-wrap:break-word;
}

.fsee-modal-footer{
    display:flex;align-items:center;justify-content:flex-end;gap:10px;
    padding:14px 18px;border-top:1px solid #eef2f7;background:#f8fafc;
    border-radius:0 0 10px 10px;
}
.fsee-btn-ver-processo{
    display:inline-flex;align-items:center;gap:6px;
    background:#16a34a;color:#fff;text-decoration:none;
    padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;
    transition:background .15s;
}
.fsee-btn-ver-processo:hover,.fsee-btn-ver-processo:focus{background:#15803d;color:#fff;text-decoration:none;}
.fsee-btn-modal-close-2{
    background:#fff;color:#334155;border:1px solid #d8dee9;
    padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;
    cursor:pointer;font-family:inherit;
}
.fsee-btn-modal-close-2:hover{background:#f1f5f9;}

/* ===== Container de impressão (criado via JS dentro do body) ===== */
#fsee-print-area{ display:none; }

@media print {
    @page { margin: 14mm 12mm; size: A4 portrait; }

    /* Quando estiver imprimindo, esconde TODO o conteúdo do body
       e mostra apenas o #fsee-print-area. */
    body.fsee-printing > *{ display:none !important; }
    body.fsee-printing > #fsee-print-area{
        display:block !important;
        position:static !important;
        margin:0 !important;
        padding:0 !important;
        background:#fff !important;
        color:#000 !important;
        font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    }
    body.fsee-printing #fsee-print-area .fsee-print-title{
        font-size:18px;
        font-weight:700;
        color:#000;
        margin:0 0 12px;
        padding:0 0 10px;
        border-bottom:2px solid #000;
        line-height:1.3;
    }
    body.fsee-printing #fsee-print-area .fsee-detail-list{
        margin:0;
        display:block;
    }
    body.fsee-printing #fsee-print-area .fsee-detail-row{
        display:grid;
        grid-template-columns:230px 1fr;
        gap:12px;
        padding:8px 0;
        border-bottom:1px solid #ccc;
        page-break-inside:avoid;
        break-inside:avoid;
    }
    body.fsee-printing #fsee-print-area .fsee-detail-row:last-child{
        border-bottom:none;
    }
    body.fsee-printing #fsee-print-area .fsee-detail-row dt{
        font-weight:700;
        color:#000;
        font-size:12px;
        text-transform:uppercase;
        letter-spacing:.03em;
        line-height:1.5;
        margin:0;
    }
    body.fsee-printing #fsee-print-area .fsee-detail-row dd{
        margin:0;
        color:#000;
        font-size:13px;
        line-height:1.5;
        word-wrap:break-word;
    }
    body.fsee-printing #fsee-print-area .fsee-link{
        color:#000 !important;
        text-decoration:underline !important;
    }
}

/* ===== Responsivo ===== */
@media (max-width: 900px){
    .fsee-row-4{flex-wrap:wrap;}
    .fsee-row-4 > .fsee-field{flex:1 1 calc(50% - 8px);}
    .fsee-kpis{grid-template-columns:repeat(2,1fr);}
    .fsee-kpi{border-right:none;border-bottom:1px solid #eef2f7;padding:10px 14px;}
    .fsee-detail-row{grid-template-columns:1fr;gap:2px;}
    .fsee-detail-row dt{font-size:11px;}
}
@media (max-width: 540px){
    .fsee-row,.fsee-row-4{flex-direction:column;}
    .fsee-row-4 > .fsee-field{flex:1 1 100%;}
    .fsee-header{flex-direction:column;align-items:stretch;}
    .fsee-header-right{justify-content:space-between;}
    .fsee-kpis{grid-template-columns:1fr;}
    .fsee-count-info{margin-left:0;width:100%;}
    .fsee-modal{padding:0;}
    .fsee-modal-dialog{max-height:100vh;height:100vh;border-radius:0;}
    .fsee-modal-header{border-radius:0;}
}
