:root{--bg-rojo:#c1272d;--bg-rojo-oscuro:#7a151a;--bg-naranja:#f2994a;--bg-verde:#219653;--bg-amarillo:#e2b93b;--bg-alerta:#c0392b;--bg-texto:#1f2937;--bg-texto-muted:#6b7684;--bg-borde:#e2e8f0;--bg-fondo:#f6f4f4}*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg-fondo);color:var(--bg-texto)}a{color:var(--bg-rojo)}.qs-header{background:var(--bg-rojo);color:#fff;padding:28px 20px;text-align:center}.qs-header h1{margin:0 0 6px;font-size:1.6rem}.qs-header p{margin:0;opacity:.9}.qs-container{max-width:720px;margin:30px auto;padding:0 16px}.qs-card{background:#fff;border-radius:12px;padding:28px;box-shadow:0 2px 10px rgba(193,39,45,.08)}.qs-intro{color:var(--bg-texto-muted);line-height:1.5}.qs-footer{text-align:center;color:var(--bg-texto-muted);font-size:.85rem;padding:24px 16px 40px}.qs-alert{padding:12px 16px;border-radius:8px;margin-bottom:18px;font-size:.95rem}.qs-alert-error{background:#fdecea;color:var(--bg-alerta);border:1px solid #f5c6c2}.qs-alert-success{background:#eaf7ef;color:var(--bg-verde);border:1px solid #bfe6cd}.qs-alert-warning{background:#fdf3e3;color:#9a6a13;border:1px solid #f2d9a6}.qs-field{margin-bottom:22px}.qs-question{display:block;font-weight:600;margin-bottom:8px}.qs-required{color:var(--bg-alerta);margin-left:3px}.qs-input{width:100%;padding:10px 12px;border:1px solid var(--bg-borde);border-radius:8px;font-size:1rem;font-family:inherit;background:#fff;color:var(--bg-texto)}.qs-input:focus{outline:none;border-color:var(--bg-rojo);box-shadow:0 0 0 3px rgba(193,39,45,.12)}.qs-scale{display:flex;gap:10px;flex-wrap:wrap}.qs-scale label{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--bg-borde);border-radius:8px;cursor:pointer}.qs-scale label:has(input:checked) {border-color:var(--bg-rojo);background:rgba(193,39,45,.06)}.qs-scale-labels{display:flex;justify-content:space-between;color:var(--bg-texto-muted);font-size:.8rem;margin-top:6px;max-width:260px}.qs-choices{display:flex;flex-direction:column;gap:8px;max-width:320px}.qs-choice{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--bg-borde);border-radius:8px;cursor:pointer}.qs-choice:has(input:checked) {border-color:var(--bg-rojo);background:rgba(193,39,45,.06)}.qs-block{border-top:1px dashed var(--bg-borde);margin-top:6px;padding-top:18px}.qs-block-title{margin:0 0 14px;font-size:1.05rem;color:var(--bg-rojo-oscuro);text-transform:uppercase;letter-spacing:.03em}.qs-btn{display:inline-block;background:var(--bg-rojo);color:#fff;border:none;padding:12px 22px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;text-align:center}.qs-btn:hover{background:var(--bg-rojo-oscuro)}.qs-btn-secondary{background:#fff;color:var(--bg-rojo);border:1px solid var(--bg-rojo)}.qs-btn-secondary:hover{background:rgba(193,39,45,.06)}.qs-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-rojo);padding:20px}.qs-login-card{background:#fff;border-radius:12px;padding:34px;width:100%;max-width:380px;box-shadow:0 8px 30px rgba(0,0,0,.2)}.qs-login-card h1{margin-top:0;font-size:1.3rem}.qs-form-row{margin-bottom:16px}.qs-form-row label{display:block;font-weight:600;margin-bottom:6px;font-size:.9rem}.qs-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width:640px){.qs-two-col{grid-template-columns:1fr}}.qs-admin-nav{display:flex;align-items:center;gap:24px;background:var(--bg-rojo-oscuro);color:#fff;padding:12px 24px;flex-wrap:wrap}.qs-admin-brand{display:flex;flex-direction:column;line-height:1.2;margin-right:12px}.qs-admin-brand strong{font-size:1rem}.qs-admin-brand span{font-size:.75rem;opacity:.75}.qs-admin-menu{display:flex;gap:4px;flex-wrap:wrap;flex:1}.qs-admin-menu a{color:rgba(255,255,255,.85);text-decoration:none;padding:8px 12px;border-radius:6px;font-size:.9rem}.qs-admin-menu a:hover{background:rgba(255,255,255,.1)}.qs-admin-menu a.active{background:var(--bg-naranja);color:#fff;font-weight:600}.qs-admin-user{display:flex;align-items:center;gap:14px;font-size:.9rem}.qs-admin-user a{color:rgba(255,255,255,.85);text-decoration:none}.qs-admin-user a.active{text-decoration:underline}.qs-admin-logout{color:#ffd4c2!important}.qs-admin-main{max-width:1180px;margin:0 auto;padding:26px 20px 60px}.qs-admin-title{margin:0 0 20px;font-size:1.4rem;color:var(--bg-rojo-oscuro)}.qs-admin-footer{text-align:center;color:var(--bg-texto-muted);font-size:.8rem;padding:20px 16px 40px}.qs-chart-card{background:#fff;border-radius:12px;padding:22px;box-shadow:0 2px 10px rgba(193,39,45,.06);margin-bottom:20px}.qs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.qs-stat{background:#fff;border-radius:12px;padding:18px 20px;box-shadow:0 2px 10px rgba(193,39,45,.06);border-left:4px solid var(--bg-rojo)}.qs-stat-label{font-size:.8rem;color:var(--bg-texto-muted);margin-bottom:6px}.qs-stat-value{font-size:1.7rem;font-weight:700;color:var(--bg-rojo-oscuro)}.qs-stat-ok{border-left-color:var(--bg-verde)}.qs-stat-ok .qs-stat-value{color:var(--bg-verde)}.qs-stat-bad{border-left-color:var(--bg-alerta)}.qs-stat-bad .qs-stat-value{color:var(--bg-alerta)}.qs-progress{background:#eef1f5;border-radius:20px;overflow:hidden;height:28px}.qs-progress-bar{height:100%;background:var(--bg-verde);color:#fff;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;font-size:.8rem;font-weight:600;white-space:nowrap;min-width:40px}.qs-progress-bad{background:var(--bg-naranja)}.qs-muted{color:var(--bg-texto-muted)}.qs-table{width:100%;border-collapse:collapse;font-size:.92rem}.qs-table th,.qs-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--bg-borde)}.qs-table th{color:var(--bg-texto-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.02em}.qs-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:600}.qs-badge-ok{background:#eaf7ef;color:var(--bg-verde)}.qs-badge-off{background:#eef1f5;color:var(--bg-texto-muted)}.qs-badge-warn{background:#fdf3e3;color:#9a6a13}.qs-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.qs-actions form{display:inline;margin:0}.qs-link{color:var(--bg-rojo);text-decoration:none;font-size:.9rem}.qs-link:hover{text-decoration:underline}.qs-inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.qs-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}