.horarios-workspace{overflow:hidden}.horarios-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem;border-bottom:1px solid var(--border)}.horarios-header h2{margin:.15rem 0;font-size:1.45rem}.horarios-header p{margin:0;color:var(--text-muted)}.horarios-file-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}.horarios-file-actions>span{color:var(--success);font-size:.68rem;font-weight:800}.horarios-steps{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border);background:var(--input-bg)}.horarios-steps button{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.4rem;padding:.7rem;border:0;border-right:1px solid var(--border);background:transparent;color:var(--text-main);text-align:left;cursor:pointer}.horarios-steps button>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--bg-card);font-size:.68rem;font-weight:900}.horarios-steps button>small{grid-column:2;color:var(--text-muted);font-size:.58rem}.horarios-steps button.is-active{background:var(--primary-soft);color:var(--primary)}#horarios-content{padding:1.1rem}.horarios-step-intro{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.horarios-step-intro p{max-width:850px;margin:0;color:var(--text-muted);line-height:1.5}.horarios-two-col{display:grid;grid-template-columns:1fr 240px;gap:1rem}.horarios-summary{display:grid;align-content:start;gap:.25rem;padding:1rem;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:12px;background:var(--primary-soft)}.horarios-summary small{color:var(--primary);font-weight:900;letter-spacing:.08em}.horarios-summary strong{font-size:2.4rem}.horarios-summary span,.horarios-summary p{color:var(--text-muted)}.horarios-check{display:flex;align-items:center;gap:.55rem}.horarios-notice{display:flex;gap:.7rem;margin-bottom:1rem;padding:.8rem;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--warning) 8%,var(--bg-card))}.horarios-notice span{color:var(--text-muted)}.horarios-ad-honorem{color:var(--warning)}.horarios-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.horarios-rules label{display:flex;gap:.65rem;padding:.85rem;border:1px solid var(--border);border-radius:10px;background:var(--input-bg)}.horarios-rules span,.horarios-rules b,.horarios-rules small{display:block}.horarios-rules small{margin-top:.2rem;color:var(--text-muted)}.horarios-validation-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1rem}.horarios-validation-summary>div{display:grid;gap:.1rem;padding:.85rem;border:1px solid var(--border);border-radius:10px;background:var(--input-bg)}.horarios-validation-summary strong{font-size:1.6rem}.horarios-validation-summary span{color:var(--text-muted)}.horarios-issues{display:grid;gap:.55rem}.horarios-issues article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem;border:1px solid var(--border);border-radius:10px}.horarios-issues article.is-blocker{border-left:4px solid var(--danger)}.horarios-issues article.is-warning{border-left:4px solid var(--warning)}.horarios-issues p{margin:.15rem 0 0;color:var(--text-muted)}.horarios-ready{display:grid;gap:.2rem;padding:1rem;border:1px solid color-mix(in srgb,var(--success) 35%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--success) 7%,var(--bg-card))}.horarios-generate,.horarios-result-status{display:flex;align-items:center;gap:.7rem;margin-top:1rem;padding:.8rem;border:1px solid var(--border);border-radius:10px;background:var(--input-bg)}.horarios-generate label{display:flex;align-items:center;gap:.4rem}.horarios-generate span{color:var(--text-muted)}.horarios-result-status span{margin-right:auto;color:var(--text-muted)}.horarios-result-status.is-valido{border-color:color-mix(in srgb,var(--success) 40%,var(--border))}
@media(max-width:900px){.horarios-steps{grid-template-columns:repeat(4,1fr)}.horarios-two-col{grid-template-columns:1fr}.horarios-rules{grid-template-columns:1fr}}@media(max-width:620px){.horarios-header,.horarios-step-intro,.horarios-result-status{align-items:stretch;flex-direction:column}.horarios-steps{grid-template-columns:repeat(2,1fr)}.horarios-validation-summary{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.horarios-workspace,.horarios-workspace *{visibility:visible}.horarios-workspace{position:absolute;inset:0}.horarios-file-actions,.horarios-steps,.horarios-step-intro button{display:none!important}}
