*{box-sizing:border-box}body{color:#1f2937;background:linear-gradient(135deg,#eef2ff,#f8fafc);margin:0;font-family:Arial,Helvetica,sans-serif}#root{min-height:100vh}.placeholder-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.placeholder-card{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:800px;padding:32px;box-shadow:0 15px 35px #00000014}.placeholder-card h1,.placeholder-card h2{color:#1d4ed8;margin-top:0}.placeholder-card p{color:#475569;line-height:1.6}.certificate-page{background:linear-gradient(135deg,#eef2ff,#f8fafc);justify-content:center;min-height:100vh;padding:24px;display:flex}.certificate-card{background:#fff;border-radius:18px;width:100%;max-width:900px;padding:32px;box-shadow:0 15px 35px #00000014}.certificate-header{text-align:center;margin-bottom:28px}.certificate-header h1{color:#1d4ed8;margin:0 0 10px}.certificate-header p{color:#475569;margin:0}.certificate-search-form,.certificate-edit-form{flex-direction:column;gap:18px;display:flex}.certificate-search-form{margin-bottom:24px}.certificate-edit-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin-top:24px;padding:20px}.certificate-edit-form h2{color:#1f2937;margin:0}.form-group label{font-weight:700}.form-group input{border:1px solid #cbd5e1;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-size:1rem}.primary-button:disabled{opacity:.7;cursor:not-allowed}.form-error{color:#dc2626;font-weight:700}.form-success{color:#15803d;font-weight:700}.certificate-result{margin-top:28px}.person-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:18px}.person-info p{margin:8px 0}.warning{color:#b45309;font-weight:800}.blocked-box{color:#991b1b;text-align:center;background:#fee2e2;border-radius:14px;margin-top:20px;padding:16px;font-weight:700}@media (width<=640px){.certificate-card{padding:22px}.primary-button{width:100%}}.lookup-page{background:linear-gradient(135deg,#eef2ff,#f8fafc);justify-content:center;min-height:100vh;padding:24px;display:flex}.lookup-card{background:#fff;border-radius:18px;width:100%;max-width:1100px;padding:32px;box-shadow:0 15px 35px #00000014}.lookup-header{text-align:center;margin-bottom:24px}.lookup-header h1{color:#1d4ed8;margin:0 0 10px}.lookup-form{flex-direction:column;gap:16px;margin-bottom:28px;display:flex}.form-group input{border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px;font-size:1rem}.primary-button{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:12px;padding:12px 18px;font-size:1rem;font-weight:700}.info-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:24px;padding:16px}.result-section h2{color:#1f2937;margin-top:28px}.result-table{border-collapse:collapse;width:100%;margin-top:12px}.result-table th,.result-table td{text-align:left;vertical-align:top;border:1px solid #dbe3ef;padding:10px 12px}.result-table th{background:#eff6ff}.positive{color:#15803d;font-weight:700}.negative{color:#dc2626;font-weight:700}.condition-box{text-align:center;border-radius:14px;margin-top:12px;padding:16px;font-size:1.1rem;font-weight:800}.condition-aprobado{color:#166534;background:#dcfce7}.condition-recuperar{color:#92400e;background:#fef3c7}.condition-libre{color:#991b1b;background:#fee2e2}@media (width<=768px){.lookup-card{padding:20px}.result-table{display:block;overflow-x:auto}}.welcome-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.welcome-card{background:#fff;border-radius:18px;width:100%;max-width:900px;padding:32px;box-shadow:0 15px 35px #00000014}.welcome-header{text-align:center;margin-bottom:28px}.welcome-header h1{color:#1d4ed8;margin:0 0 12px}.welcome-header p{color:#475569;margin:0;font-size:1rem}.welcome-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:10px;display:flex}.form-group label{margin:0;font-weight:600}.form-group input{background:#fff;border:1px solid #cbd5e1;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.form-error{color:#dc2626;margin:0;font-weight:600}.primary-button:disabled{opacity:.7;cursor:not-allowed;transform:none}@media (width<=640px){.welcome-card{padding:22px}.welcome-header h1{font-size:1.5rem}}.exam-page{justify-content:center;align-items:flex-start;min-height:100vh;padding:24px;display:flex}.exam-card{background:#fff;border-radius:18px;width:100%;max-width:950px;padding:32px;box-shadow:0 15px 35px #00000014}.exam-header{text-align:center;margin-bottom:24px}.exam-header h1{color:#1d4ed8;margin:0 0 12px}.exam-header p{color:#475569;margin:0}.exam-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px;padding:18px;display:grid}.exam-info p{margin:0}.exam-error{color:#dc2626;margin:0 0 18px;font-weight:600}.exam-form{flex-direction:column;gap:20px;display:flex}.question-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px}.question-meta{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.question-meta span{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:6px 10px;font-size:.9rem;font-weight:700}.question-statement{color:#1f2937;margin:0 0 16px;font-weight:600;line-height:1.5}.question-card textarea{resize:vertical;border:1px solid #cbd5e1;border-radius:12px;outline:none;width:100%;min-height:120px;padding:12px 14px;font-size:1rem}.question-card textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.options-group{flex-direction:column;gap:12px;display:flex}.option-item{align-items:center;gap:10px;line-height:1.5;display:flex}.exam-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.primary-button,.secondary-button{cursor:pointer;border:none;border-radius:12px;padding:12px 18px;font-size:1rem;font-weight:700;transition:transform .15s,opacity .15s}.primary-button{color:#fff;background:#2563eb}.secondary-button{color:#1f2937;background:#e2e8f0}.primary-button:hover,.secondary-button:hover{opacity:.95;transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.warning-overlay{background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.warning-box{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:460px;padding:24px;box-shadow:0 15px 40px #0003}.warning-box h2{color:#dc2626;margin-top:0}.warning-box p{color:#334155;line-height:1.5}@media (width<=700px){.exam-card{padding:22px}.exam-info{grid-template-columns:1fr}.exam-actions{flex-direction:column}.primary-button,.secondary-button{width:100%}}.timer-normal{color:#1f2937;font-weight:700}.timer-danger{color:#dc2626;font-weight:700}.exam-timer{z-index:1000;text-align:center;background:#fff;border:1px solid #cbd5e1;border-radius:14px;flex-direction:column;gap:4px;min-width:170px;padding:12px 16px;display:flex;position:fixed;top:20px;right:20px;box-shadow:0 12px 30px #0000001f}.exam-timer-label{color:#475569;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:700}.exam-timer-value{color:#1d4ed8;font-size:1.4rem;font-weight:800}.exam-timer-danger{background:#fff5f5;border-color:#fecaca}.exam-timer-danger .exam-timer-value{color:#dc2626}@media (width<=700px){.exam-timer{min-width:140px;padding:10px 12px;top:12px;right:12px}.exam-timer-label{font-size:.75rem}.exam-timer-value{font-size:1.15rem}}.question-statement,.question-meta,.option-item{-webkit-user-select:none;user-select:none}.submitted-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.submitted-card{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:760px;padding:32px;box-shadow:0 15px 35px #00000014}.submitted-card h1{color:#16a34a;margin-top:0;margin-bottom:12px}.submitted-card p{color:#475569}.submitted-summary{text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin:24px 0;padding:18px}.submitted-summary p{color:#1f2937;margin:10px 0}.primary-button{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:12px;padding:12px 18px;font-size:1rem;font-weight:700;transition:transform .15s,opacity .15s}.primary-button:hover{opacity:.95;transform:translateY(-1px)}@media (width<=640px){.submitted-card{padding:22px}.primary-button{width:100%}}
