/* Fotografías de nuestra comunidad educativa. */
.login-art{background:#faf6f6;padding:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;overflow:hidden}
.school-facade{display:block;width:100%;height:auto;aspect-ratio:1600/747;object-fit:cover;border-bottom:5px solid var(--red)}
.login-message{background:transparent;border-radius:0;max-width:560px;padding:32px 44px;margin:auto}
.login-message h1{font-size:38px;margin:16px 0;line-height:1.15}
.login-message p{margin-bottom:0}
.welcome-school{padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:210px}
.welcome-school:after{display:none}
.welcome-copy{padding:28px}
.welcome-school h2{max-width:360px}
.school-mural{margin:0;position:relative;align-self:stretch;min-height:210px;overflow:hidden}
.welcome-school .school-mural img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;mix-blend-mode:normal;margin:0}
.school-mural figcaption{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:28px 18px 14px;background:linear-gradient(transparent,rgba(28,18,15,.8));color:#fff;font-size:11px;letter-spacing:.3px}
@media(max-width:1000px){.login-message{padding:26px}.login-message h1{font-size:31px}.welcome-school{grid-template-columns:1fr}.school-mural{min-height:0;aspect-ratio:1600/747}.welcome-copy{padding:24px}.welcome-school h2{max-width:none}}
@media(max-width:700px){.login-art{display:block}.login-message{display:none}.school-facade{max-height:210px}.login-form{min-height:auto;padding:30px 28px}.welcome-school{padding:0}.welcome-school .school-mural img{width:100%;height:100%;margin:0}.welcome-copy{padding:22px}.welcome-school p{font-size:12px}}

/* Ambientes, búsqueda y acciones del inventario. */
.sidebar{overflow-y:auto}
.sidebar-note{display:none}
.row-actions{white-space:nowrap}
.row-actions .btn + .btn{margin-left:6px}
.btn.danger{color:var(--red)}
.btn.danger:hover{background:#ffedf0}
.environment-card{background:#fffbfc}
.environment-next{margin-top:20px;max-width:450px}
.code-search{width:min(440px,100%);margin-bottom:0!important}
#asset-search{align-items:flex-end;justify-content:flex-start}
.grade-card h3{overflow-wrap:anywhere}
/* The same fixed column widths apply on screen and on printed A4 pages. */
.print-page{max-width:210mm;padding:15mm;background:white;overflow:visible}
.print-header{display:grid;grid-template-columns:75px minmax(0,1fr) 75px;gap:12px;align-items:center}
.print-header strong{font-size:10px;line-height:1.7}
.print-header .school-logo{width:70px;height:80px;object-fit:contain;justify-self:end}
.fe-logo{width:75px;height:74px;position:relative;overflow:hidden}
.print-header .fe-logo img{position:absolute;width:270px;max-width:none;height:270px;left:-12px;top:-90px}
.print-page table{width:100%;max-width:100%;table-layout:fixed;border:1px solid #333;border-collapse:collapse}
.print-page th,.print-page td{box-sizing:border-box;border:1px solid #333;padding:7px 5px;text-align:center;vertical-align:middle;overflow-wrap:anywhere;word-break:normal;white-space:normal}
.print-page th{font-size:8px;letter-spacing:0;line-height:1.5}
.print-page td{font-size:10px;line-height:1.55}
.print-page td.justify{text-align:justify;text-justify:inter-word}
.print-page td.justify strong{text-align:justify}
.print-page th:last-child,.print-page td:last-child{border-right:1px solid #333}
.print-page .motto{text-align:center}
.print-page .signature{line-height:1.7;overflow-wrap:anywhere}
.print-page .signature:last-child div{max-width:340px}
@media(max-width:700px){
 .print-controls{max-width:100%;padding:0}
 .print-page{padding:16px;max-width:100%}
 .print-header{grid-template-columns:55px minmax(0,1fr) 55px;gap:5px}
 .print-header strong{font-size:8px}
 .print-header .school-logo{width:50px;height:65px}
 .fe-logo{transform:scale(.7);transform-origin:left center;width:55px}
 .print-page td{font-size:8px}
 .signatures{gap:55px 20px}
 .environment-next{max-width:none}
}
@media print{
 @page{size:A4 portrait;margin:15mm}
 html,body,#app{width:auto!important;min-width:0!important;margin:0!important;padding:0!important;background:white!important;overflow:visible!important}
 .print-page{width:100%;max-width:none;margin:0;padding:0;overflow:visible}
 .print-header{grid-template-columns:75px minmax(0,1fr) 75px;gap:12px}
 .print-header strong{font-size:10px}
 .print-header .school-logo{width:70px;height:80px}
 .fe-logo{transform:none;width:75px;height:74px}
 .print-page table{width:100%;border:0.3mm solid #333}
 .print-page th,.print-page td{border:0.3mm solid #333}
 .print-page th:last-child,.print-page td:last-child{border-right:0.3mm solid #333}
 .print-page th{font-size:8px}
 .print-page td{font-size:10px}
 .print-page thead{display:table-header-group}
 .print-page tr{break-inside:avoid;page-break-inside:avoid}
 .signatures{break-inside:avoid;page-break-inside:avoid}
}
