@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=DM+Mono:wght@400;500&display=swap";body{background:#f4f3f0;font-family:sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--clr-bg:#f4f3f0;--clr-surface:#fff;--clr-border:#d8d5ce;--clr-border-focus:#1a1a1a;--clr-text:#1a1a1a;--clr-text-muted:#6b6860;--clr-accent:#1a1a1a;--clr-accent-hover:#333;--clr-danger:#c0392b;--clr-danger-bg:#fdf0ee;--clr-warning:#d4600a;--clr-warning-bg:#fef3e8;--clr-success:#1a6b3c;--clr-success-bg:#eaf6f0;--clr-radio-selected:#1a1a1a;--font-main:"DM Sans", sans-serif;--font-mono:"DM Mono", monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-card:0 1px 3px #00000014, 0 4px 16px #0000000a}body{font-family:var(--font-main);background-color:var(--clr-bg);color:var(--clr-text);min-height:100vh;padding:2rem 1rem}.form-wrapper{max-width:640px;margin:0 auto}.form-header{text-align:center;margin-bottom:2.5rem}.form-logo{justify-content:center;margin-bottom:1rem;display:flex}.form-logo img{object-fit:contain;width:auto;height:48px}.form-header .badge{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--clr-text-muted);border:.5px solid var(--clr-border);border-radius:100px;margin-bottom:1rem;padding:4px 14px;font-size:11px;font-weight:500;display:inline-block}.form-header h1{letter-spacing:-.02em;color:var(--clr-text);margin-bottom:.4rem;font-size:1.75rem;font-weight:600}.form-header p{color:var(--clr-text-muted);font-size:.875rem}.card{background:var(--clr-surface);border:.5px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:1rem;padding:1.75rem}.card-title{font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--clr-text-muted);border-bottom:.5px solid var(--clr-border);margin-bottom:1.25rem;padding-bottom:.75rem}.field-group{margin-bottom:1.25rem}.field-group:last-child{margin-bottom:0}.field-group label{color:var(--clr-text);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}input[type=text],input[type=number],select{width:100%;height:42px;font-family:var(--font-main);color:var(--clr-text);background:var(--clr-bg);border:.5px solid var(--clr-border);border-radius:var(--radius-sm);appearance:none;outline:none;padding:0 .875rem;font-size:.9rem;transition:border-color .15s,background .15s}input[type=text]:focus,input[type=number]:focus,select:focus{border-color:var(--clr-border-focus);background:var(--clr-surface)}input[type=text].error,input[type=number].error,select.error{border-color:var(--clr-danger)}.select-wrapper{position:relative}.select-wrapper:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--clr-text-muted);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.question-label{color:var(--clr-text);margin-bottom:.35rem;font-size:.875rem;font-weight:500}.question-hint{color:var(--clr-text-muted);margin-bottom:.75rem;font-size:.8rem;line-height:1.5}.radio-group{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.radio-option{cursor:pointer;position:relative}.radio-option input[type=radio]{opacity:0;width:0;height:0;position:absolute}.radio-label{border:.5px solid var(--clr-border);border-radius:var(--radius-sm);color:var(--clr-text-muted);background:var(--clr-bg);-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;padding:.65rem .875rem;font-size:.875rem;transition:border-color .15s,background .15s,color .15s;display:flex}.radio-label:before{content:"";border:1.5px solid var(--clr-border);border-radius:50%;flex-shrink:0;width:14px;height:14px;transition:border-color .15s,background .15s}.radio-option input[type=radio]:checked+.radio-label{border-color:var(--clr-radio-selected);background:var(--clr-surface);color:var(--clr-text)}.radio-option input[type=radio]:checked+.radio-label:before{border-color:var(--clr-radio-selected);background:var(--clr-radio-selected);box-shadow:inset 0 0 0 3px var(--clr-surface)}.radio-option input[type=radio]:focus+.radio-label{outline:2px solid var(--clr-text);outline-offset:2px}.radio-group.error .radio-label{border-color:var(--clr-danger)}.question-block{border-bottom:.5px solid var(--clr-border);padding:1.25rem 0}.question-block:first-child{padding-top:0}.question-block:last-child{border-bottom:none;padding-bottom:0}.question-number{font-family:var(--font-mono);color:var(--clr-text-muted);letter-spacing:.05em;margin-bottom:.25rem;font-size:10px}.signature-area{border:.5px solid var(--clr-border);border-radius:var(--radius-sm);background:var(--clr-bg);cursor:crosshair;overflow:hidden}.signature-area canvas{width:100%;height:140px;display:block}.signature-actions{justify-content:flex-end;margin-top:.5rem;display:flex}.btn-clear{font-family:var(--font-main);color:var(--clr-text-muted);border:.5px solid var(--clr-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:5px 12px;font-size:.8rem;transition:color .15s,border-color .15s}.btn-clear:hover{color:var(--clr-text);border-color:var(--clr-text)}.error-msg{color:var(--clr-danger);margin-top:.35rem;font-size:.78rem;display:none}.error-msg.visible{display:block}.result-banner{border-radius:var(--radius-md);border:.5px solid;margin-bottom:1rem;padding:1.25rem 1.5rem;display:none}.result-banner.show{display:block}.result-banner.apto{background:var(--clr-success-bg);color:var(--clr-success);border-color:#a8d5be}.result-banner.precaucion{background:var(--clr-warning-bg);color:var(--clr-warning);border-color:#f5c28a}.result-banner.no-apto{background:var(--clr-danger-bg);color:var(--clr-danger);border-color:#e8bab5}.result-banner h3{margin-bottom:.25rem;font-size:1rem;font-weight:600}.result-banner p{opacity:.85;font-size:.85rem}.btn-submit{width:100%;height:48px;font-family:var(--font-main);color:#fff;background:var(--clr-accent);border-radius:var(--radius-md);cursor:pointer;letter-spacing:-.01em;border:none;font-size:.95rem;font-weight:500;transition:background .15s,transform .1s}.btn-submit:hover{background:var(--clr-accent-hover)}.btn-submit:active{transform:scale(.99)}.form-footer{text-align:center;color:var(--clr-text-muted);margin-top:1.5rem;font-size:.78rem}@media (width<=480px){.field-row,.radio-group{grid-template-columns:1fr}.card{padding:1.25rem}}.sv-pin-wrap{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.sv-pin-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:360px;box-shadow:var(--shadow-card);padding:2.5rem 2rem}.sv-pin-title{color:var(--clr-text);margin-bottom:.4rem;font-size:1.2rem;font-weight:600}.sv-pin-sub{color:var(--clr-text-muted);margin-bottom:1.5rem;font-size:.85rem}.sv-pin-input{border:1px solid var(--clr-border);border-radius:var(--radius-md);letter-spacing:.3em;text-align:center;width:100%;font-size:1.2rem;font-family:var(--font-mono);background:var(--clr-bg);color:var(--clr-text);margin-bottom:.75rem;padding:12px 14px;transition:border-color .15s}.sv-pin-input:focus{border-color:var(--clr-border-focus);outline:none}.sv-pin-input.sv-pin-error{border-color:var(--clr-danger)}.sv-pin-msg{color:var(--clr-danger);margin-bottom:1rem;font-size:.8rem}.sv-wrap{width:100%;max-width:1600px;margin:0 auto;padding:2rem 1.5rem}.sv-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.sv-title{color:var(--clr-text);font-size:1.4rem;font-weight:600}.sv-subtitle{color:var(--clr-text-muted);margin-top:2px;font-size:.85rem}.sv-btn-refresh{border:1px solid var(--clr-border);border-radius:var(--radius-md);font-size:.85rem;font-family:var(--font-main);color:var(--clr-text-muted);cursor:pointer;background:0 0;flex-shrink:0;padding:8px 16px;transition:border-color .15s,color .15s}.sv-btn-refresh:hover:not(:disabled){border-color:var(--clr-border-focus);color:var(--clr-text)}.sv-btn-refresh:disabled{opacity:.5;cursor:default}.sv-filtros{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem;padding:1.25rem 1.5rem;display:flex}.sv-filtro-group{flex-direction:column;gap:5px;min-width:140px;display:flex}.sv-filtro-busqueda{flex:1;min-width:220px}.sv-label{color:var(--clr-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.sv-input{border:1px solid var(--clr-border);border-radius:var(--radius-sm);font-size:.9rem;font-family:var(--font-main);background:var(--clr-bg);color:var(--clr-text);width:100%;padding:9px 12px;transition:border-color .15s}.sv-input:focus{border-color:var(--clr-border-focus);outline:none}.sv-search-row{gap:8px;display:flex}.sv-search-row .sv-input{flex:1}.sv-btn-buscar{background:var(--clr-accent);color:#fff;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;font-family:var(--font-main);cursor:pointer;white-space:nowrap;border:none;padding:9px 16px;transition:background .15s}.sv-btn-buscar:hover:not(:disabled){background:var(--clr-accent-hover)}.sv-btn-buscar:disabled{opacity:.5;cursor:default}.sv-loading,.sv-empty{text-align:center;color:var(--clr-text-muted);padding:3rem 1rem;font-size:.9rem}.sv-error{background:var(--clr-danger-bg);border:1px solid var(--clr-danger);border-radius:var(--radius-md);color:var(--clr-danger);margin-bottom:1rem;padding:12px 16px;font-size:.875rem}.sv-table-wrap{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow-x:auto}.sv-table{border-collapse:collapse;width:100%;font-size:.8rem}.sv-table thead tr{border-bottom:1px solid var(--clr-border)}.sv-table th{text-align:left;color:var(--clr-text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:9px 10px;font-size:.68rem;font-weight:500}.sv-table td{color:var(--clr-text);vertical-align:middle;border-bottom:1px solid var(--clr-border);white-space:nowrap;padding:9px 10px}.sv-table tbody tr:last-child td{border-bottom:none}.sv-table tbody tr:hover td{background:var(--clr-bg)}.sv-id{color:var(--clr-text-muted);font-size:.8rem}.sv-nombre{white-space:normal;min-width:140px;font-weight:500}.sv-mono{font-family:var(--font-mono);font-size:.78rem}.sv-ubicacion{color:var(--clr-text-muted);white-space:normal;max-width:140px;font-size:.78rem}.sv-fecha{white-space:nowrap;color:var(--clr-text-muted);font-size:.78rem}.sv-badge{white-space:nowrap;border-radius:100px;padding:2px 8px;font-size:.7rem;font-weight:500;display:inline-block}.sv-badge--apto{background:var(--clr-success-bg);color:var(--clr-success)}.sv-badge--precaucion{background:var(--clr-warning-bg);color:var(--clr-warning)}.sv-badge--no-apto{background:var(--clr-danger-bg);color:var(--clr-danger)}.sv-btn-pdf{border:1px solid var(--clr-border);border-radius:var(--radius-sm);font-size:.75rem;font-family:var(--font-main);color:var(--clr-text-muted);cursor:pointer;white-space:nowrap;background:0 0;padding:5px 10px;transition:border-color .15s,color .15s}.sv-btn-pdf:hover:not(:disabled){border-color:var(--clr-border-focus);color:var(--clr-text)}.sv-btn-pdf:disabled{opacity:.5;cursor:default}.sv-paginacion{justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.sv-btn-pag{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);font-size:.85rem;font-family:var(--font-main);color:var(--clr-text);cursor:pointer;padding:8px 16px;transition:border-color .15s}.sv-btn-pag:hover:not(:disabled){border-color:var(--clr-border-focus)}.sv-btn-pag:disabled{opacity:.4;cursor:default}.sv-pag-info{color:var(--clr-text-muted);font-size:.85rem}@media (width<=600px){.sv-filtros{flex-direction:column}.sv-filtro-group{min-width:unset;width:100%}.sv-table th:nth-child(5),.sv-table td:nth-child(5){display:none}}.sv-btn-excel{color:#fff;cursor:pointer;background:#1d6f42;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .15s}.sv-btn-excel:hover:not(:disabled){opacity:.85}.sv-btn-excel:disabled{opacity:.45;cursor:not-allowed}
