
/* APP KAPITAL V54 - ETAPA 6A - REPORTE CHECK LIST */
.report-launch-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin-top:18px; }
.report-launch-card { min-height:150px; border:1px solid #e4d9e8; border-radius:18px; padding:20px; text-align:left; background:#fff; color:#2d2030; display:flex; flex-direction:column; gap:10px; cursor:default; }
.report-launch-card strong { font-size:18px; }
.report-launch-card span { color:#786b7c; line-height:1.45; }
.report-launch-card small { margin-top:auto; font-weight:800; color:#812990; }
.report-launch-card-primary { cursor:pointer; border-color:#c99ed0; box-shadow:0 10px 26px rgba(129,41,144,.12); }
.report-launch-card-primary:hover { transform:translateY(-2px); }
.report-launch-card.disabled { opacity:.64; }
.report-module-toolbar { display:flex; justify-content:space-between; gap:16px; align-items:center; background:#fff; border:1px solid #eadfec; border-radius:18px; padding:16px 18px; margin-bottom:16px; }
.report-module-toolbar h3 { margin:3px 0 0; }
.report-list-controls { display:flex; gap:10px; justify-content:flex-end; margin-bottom:14px; }
.report-list-controls input { max-width:430px; }
.checklist-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.checklist-summary-card { background:#fff; border:1px solid #e9ddea; border-radius:14px; padding:14px; }
.checklist-summary-card span { display:block; font-size:12px; color:#7a6d7f; }
.checklist-summary-card strong { display:block; margin-top:4px; font-size:24px; color:#812990; }
.checklist-table td small { display:block; color:#8a7e8e; margin-top:4px; }
.checklist-status { display:inline-flex; align-items:center; border-radius:999px; padding:5px 10px; font-size:11px; font-weight:900; letter-spacing:.03em; }
.checklist-status.pending { color:#6f5a00; background:#fff6ca; }
.checklist-status.draft { color:#8b4b00; background:#ffe7cc; }
.checklist-status.complete { color:#087742; background:#dcf7e9; }
.checklist-editor-toolbar { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.checklist-screen-wrap { overflow:auto; padding:8px 0 24px; }
.checklist-sheet { position:relative; width:210mm; min-height:297mm; margin:0 auto; padding:7mm; background:#fff; color:#3d183f; border:1px solid #a68fa8; box-shadow:0 18px 45px rgba(47,25,50,.12); font-family:Arial,Helvetica,sans-serif; font-size:9.4px; line-height:1.28; box-sizing:border-box; }
.document-code { height:14px; border:1px solid #2a182c; text-align:right; padding:1px 5px; color:#812990; font-style:italic; font-weight:800; }
.checklist-header { display:grid; grid-template-columns:155px 1fr; min-height:52px; border-left:1px solid #2a182c; border-right:1px solid #2a182c; border-bottom:3px solid #812990; }
.checklist-logo-wrap { display:flex; align-items:center; justify-content:center; border-right:1px solid #2a182c; padding:3px 7px; }
.checklist-logo-wrap img { max-width:145px; max-height:45px; object-fit:contain; }
.checklist-title { background:#5e145f; color:#fff; display:flex; align-items:center; justify-content:center; font-size:17px; font-weight:900; font-style:italic; letter-spacing:.01em; }
.credit-type-line { min-height:60px; display:flex; align-items:center; justify-content:center; gap:9px; padding:8px; border-left:1px solid #2a182c; border-right:1px solid #2a182c; color:#812990; font-size:12px; font-style:italic; }
.credit-type-line strong { margin-right:55px; }
.credit-type-line small { display:block; color:#5f5362; font-size:8px; font-style:normal; margin-left:14px; }
.static-check { display:inline-flex; width:29px; height:25px; align-items:center; justify-content:center; border:2px solid #111; color:#812990; font-size:20px; font-style:normal; font-weight:900; background:#fff; }
.credit-type-option { display:inline-flex; align-items:center; gap:7px; cursor:pointer; font-style:italic; user-select:none; }
.credit-type-option input { position:absolute; opacity:0; pointer-events:none; }
.credit-type-box { display:inline-flex; width:29px; height:25px; align-items:center; justify-content:center; border:2px solid #111; background:#fff; color:#812990; font-size:20px; font-style:normal; font-weight:900; line-height:1; }
.credit-type-option input:checked + .credit-type-box::after { content:'✓'; }
.credit-type-option input:focus-visible + .credit-type-box { outline:3px solid rgba(129,41,144,.28); outline-offset:2px; }
.credit-identification { display:grid; grid-template-columns:1.9fr .65fr .65fr; gap:0; border:1px solid #2a182c; border-top:none; min-height:30px; }
.credit-identification > div { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:5px; padding:4px 6px; border-right:1px solid #8e7f90; }
.credit-identification > div:last-child { border-right:none; }
.credit-identification span { color:#812990; font-style:italic; font-weight:800; font-size:8px; }
.credit-identification strong { min-height:16px; border-bottom:1px solid #111; color:#3d183f; text-align:center; overflow-wrap:anywhere; }
.checklist-document-table { width:100%; border-collapse:collapse; table-layout:fixed; margin-top:0; color:#5c245f; }
.checklist-document-table .col-no { width:6%; }
.checklist-document-table .col-document { width:58%; }
.checklist-document-table .col-mark { width:9%; }
.checklist-document-table thead th { background:#5e145f; color:#fff; border-right:1px solid #fff; padding:5px 3px; text-align:center; font-weight:900; font-size:10px; }
.checklist-document-table thead tr:first-child th:nth-child(1), .checklist-document-table thead tr:first-child th:nth-child(2) { font-size:13px; font-style:italic; }
.checklist-document-table thead tr:last-child th { font-size:11px; font-style:italic; }
.document-group td { background:#939598; color:#fff; text-align:center; padding:2px 4px; font-style:italic; font-weight:900; border-top:1px solid #fff; }
.checklist-item-row td { border-bottom:1px solid #eee; min-height:22px; padding:2px 4px; }
.number-cell { text-align:center; color:#111; font-weight:900; font-style:italic; }
.number-cell sup { color:#812990; font-size:9px; margin-right:1px; }
.document-cell { font-style:italic; font-size:8.8px; }
.mark-cell { text-align:center; border-left:1px solid #f0e7f2; }
.tick-box { display:inline-flex; align-items:center; justify-content:center; cursor:pointer; }
.tick-box input { position:absolute; opacity:0; pointer-events:none; }
.tick-box span { display:inline-flex; width:31px; height:22px; align-items:center; justify-content:center; border:1.6px solid #111; background:#fff; color:#812990; font-size:18px; font-weight:900; line-height:1; }
.tick-box input:checked + span::after { content:'✓'; }
.tick-box input:focus-visible + span { outline:3px solid rgba(129,41,144,.25); outline-offset:2px; }
.minimum-note { background:#d8d8d8; min-height:18px; padding:4px 3px; color:#812990; font-style:italic; }
.gray-band { background:#d3d3d3; color:#812990; min-height:20px; padding:5px; text-align:center; font-style:italic; font-weight:900; }
.observations-readonly { min-height:60px; border:1px solid #222; border-top:none; padding:8px; white-space:pre-wrap; color:#4b354e; }
.place-date-line { display:grid; grid-template-columns:1fr 1.4fr; gap:10px; min-height:42px; align-items:center; border:1px solid #222; border-top:none; padding:6px 20%; color:#812990; font-style:italic; }
.place-date-line span { text-align:right; }
.place-date-line strong { text-align:center; }
.responsibility-signatures { border:1px solid #222; border-top:none; }
.signature-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:35px 45px 12px; }
.signature-box { text-align:center; color:#812990; font-style:italic; }
.signature-line { border-top:1px dashed #812990; margin-bottom:7px; }
.signature-box p { display:grid; grid-template-columns:auto 1fr; gap:8px; margin:20px 0 0; text-align:left; }
.signature-box p span { font-weight:800; }
.empty-state.error { color:#a61f1f; }

@media (max-width: 900px) {
    .checklist-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .report-module-toolbar { align-items:flex-start; flex-direction:column; }
    .report-list-controls { justify-content:stretch; }
    .report-list-controls input { max-width:none; }
}

@media print {
    @page { size:A4 portrait; margin:5mm; }
    body { background:#fff !important; }
    body * { visibility:hidden !important; }
    #checklistPrintArea, #checklistPrintArea * { visibility:visible !important; }
    #checklistPrintArea { position:absolute !important; left:0 !important; top:0 !important; width:100% !important; padding:0 !important; margin:0 !important; overflow:visible !important; }
    .checklist-sheet { width:200mm !important; min-height:287mm !important; margin:0 auto !important; padding:3.5mm !important; box-shadow:none !important; border:1px solid #222 !important; font-size:8.5px !important; }
    .tick-box input:checked + span::after { content:'✓' !important; }
    .credit-type-option input:checked + .credit-type-box::after { content:'✓' !important; }
    .tick-box span { width:25px !important; height:18px !important; }
    .checklist-item-row td { padding:1px 3px !important; }
    .signature-grid { padding-top:28px !important; }
}
