body{background:#f4f6f8}.login-wrapper{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center}.login-card{max-width:420px;width:100%}.metric span{display:block;color:#6c757d}.metric strong{font-size:2rem}.prompt-box{background:#111827;color:#e5e7eb;border-radius:.5rem;padding:1rem;white-space:pre-wrap}.code-area{font-family:Consolas,Monaco,monospace}.table td,.table th{vertical-align:middle}
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
.prompt-box { white-space: pre-wrap; background: #f8f9fa; border: 1px solid #dee2e6; border-radius: .5rem; padding: .75rem; max-height: 420px; overflow:auto; }
.project-section-card .markdown-preview { white-space: pre-wrap; max-height: 320px; overflow: auto; }
.markdown-full { max-height: 620px; overflow: auto; white-space: pre-wrap; }

.requirement-item{border:1px solid #dee2e6;border-radius:.75rem;padding:.75rem;background:#fff;font-size:.95rem;min-height:48px;display:flex;align-items:center}.requirement-item.ok{border-color:#badbcc;background:#f0fff4}.requirement-item.missing{border-color:#f5c2c7;background:#fff5f5}.markdown-preview{white-space:pre-wrap}.accordion-button .badge{font-size:.75rem}.markdown-full{max-height:70vh;overflow:auto}


/* v12: lectura clara del MD completo */
.markdown-document{
    background:#ffffff;
    color:#111827;
    border:1px solid #d7dde5;
    border-radius:.75rem;
    padding:1.25rem 1.35rem;
    line-height:1.68;
    font-size:15px;
    max-height:72vh;
    overflow:auto;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.markdown-document h1,
.markdown-document h2,
.markdown-document h3,
.markdown-document h4,
.markdown-document h5,
.markdown-document h6{
    color:#0f172a;
    margin-top:1.15rem;
    margin-bottom:.65rem;
    font-weight:700;
}
.markdown-document h2{font-size:1.35rem;border-bottom:1px solid #e5e7eb;padding-bottom:.35rem;}
.markdown-document h3{font-size:1.1rem;}
.markdown-document p{margin-bottom:.75rem;}
.markdown-document ul{margin-bottom:1rem;padding-left:1.35rem;}
.markdown-document li{margin-bottom:.25rem;}
.markdown-document .md-code,
.markdown-raw{
    background:#111827 !important;
    color:#e5e7eb !important;
    border:1px solid #374151;
    border-radius:.5rem;
    padding:1rem;
    white-space:pre-wrap;
    overflow:auto;
}
.markdown-raw{max-height:420px;}


/* Producción: login sin credenciales visibles ni estilos de autocompletado invasivos */
input:-webkit-autofill {
    transition: background-color 9999s ease-in-out 0s;
}


/* Login producción v21 */
.login-page {
    min-height: calc(100vh - 64px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.login-card {
    width: 100%;
    max-width: 440px;
    background: #ffffff;
    border: 1px solid #d7dce2;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
    padding: 28px;
}

.login-title {
    font-size: 1.6rem;
    margin-bottom: 20px;
}

input:-webkit-autofill {
    transition: background-color 9999s ease-in-out 0s;
}
