.back-link{color:var(--ink-dim);text-decoration:none;border-bottom:1px solid transparent}.back-link:hover{color:var(--azure);border-bottom-color:var(--azure)}.linea-tabs{display:flex;gap:4px;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--border)}.linea-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ink-dim);padding:12px 16px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:color .12s,border-color .12s}.linea-tab:hover{color:var(--ink)}.linea-tab.active{color:var(--azure);border-bottom-color:var(--azure)}.section-tabs{display:flex;gap:8px;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.section-tab{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-dim);padding:7px 16px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:color .12s,border-color .12s,background .12s,box-shadow .12s}.section-tab:hover{border-color:var(--border-strong);color:var(--ink)}.section-tab.active{color:#fff;border-color:var(--azure);background:var(--azure);box-shadow:var(--shadow-sm)}.top-tabs{padding:16px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.frotis-row{display:flex;flex-direction:column;gap:6px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:10px}.frotis-row-linea{font-family:var(--font-display);font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim)}.frotis-row select{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:7px 9px;font-family:var(--font-body);font-size:13px}.analisis-rows{display:flex;flex-direction:column;gap:6px;margin:10px 0 8px}.analisis-row{display:grid;grid-template-columns:2fr 1.2fr .7fr .7fr auto;gap:6px;align-items:center}.analisis-row input{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:7px 9px;font-family:var(--font-body);font-size:13px;width:100%;transition:border-color .12s,box-shadow .12s}.analisis-row input:focus{outline:none;border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.analisis-row .analisis-num{text-align:right;font-variant-numeric:tabular-nums}.add-analisis-btn{background:var(--panel);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--ink-dim);padding:9px 12px;cursor:pointer;font-family:var(--font-body);font-size:13px;width:100%;margin-bottom:16px;transition:border-color .15s,color .15s,background .15s}.add-analisis-btn:hover{border-color:var(--azure);color:var(--azure);background:var(--azure-dim)}.nivel-lock-badge{font-size:10px;color:var(--ink-dim);margin-left:6px}.nivel-checkbox-row{display:flex;align-items:center;gap:9px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 11px;margin-bottom:6px;cursor:pointer}.nivel-checkbox-row input[type=checkbox]{accent-color:var(--azure);width:15px;height:15px;cursor:pointer}.nivel-checkbox-row label{font-family:var(--font-body);font-size:13px;color:var(--ink);cursor:pointer;flex:1}.perfil-editor-label-input{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:9px 11px;font-family:var(--font-body);font-size:14px;font-weight:500;margin-bottom:16px;transition:border-color .12s,box-shadow .12s}.perfil-editor-label-input:focus{outline:none;border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.variation-row{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}.variation-row label{font-size:12px;color:var(--ink-dim);font-family:var(--font-body)}.variation-row input{width:100%;max-width:340px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:7px 9px;font-family:var(--font-body);font-size:13px}.range-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:13px;margin-bottom:16px}.range-table th{text-align:left;color:var(--ink-dim);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:7px 8px;border-bottom:1px solid var(--border)}.range-table td{padding:7px 8px;border-bottom:1px solid var(--border)}.range-table input[type=number]{width:70px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:6px 7px;font-family:var(--font-body);font-size:13px}.range-total{font-size:12px;color:var(--ink-dim);margin-bottom:14px}.range-total.warn{color:var(--eosin-tint);font-weight:500}.save-perfil-btn{background:var(--azure);border:1px solid var(--azure);border-radius:var(--radius-sm);color:#fff;padding:9px 18px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:box-shadow .12s,transform .06s}.save-perfil-btn:hover{box-shadow:var(--shadow-md)}.save-perfil-btn:active{transform:translateY(1px)}.hematologia-visual-link{display:block;width:100%;background:#fff5f5;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#b91c1c;padding:11px 14px;margin-bottom:12px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:600;text-align:left;transition:background .12s,border-color .12s}.hematologia-visual-link:hover{background:#fee2e2;border-color:#fca5a5}#volver-a-hematologia-btn{display:inline-block;background:#fff5f5;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#b91c1c;padding:9px 16px;margin-bottom:16px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:600;transition:background .12s,border-color .12s}#volver-a-hematologia-btn:hover{background:#fee2e2;border-color:#fca5a5}.admin-main{flex:1;display:flex;gap:1px;background:var(--border);overflow:hidden}.admin-panel{background:var(--panel);padding:20px;overflow-y:auto;width:280px;font-family:var(--font-body)}.admin-panel-wide{flex:1;width:auto}.category-list{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.category-row{display:flex;gap:6px}.category-row.tipo-row-with-size{flex-direction:column;gap:6px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px;margin-bottom:4px}.category-row.tipo-row-with-size.active{border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.tipo-row-top{display:flex;gap:4px}.tipo-row-with-size .category-select{border:none;background:transparent;padding:2px 0;box-shadow:none}.tipo-row-with-size.active .category-select{background:transparent;color:var(--azure-tint);font-weight:600}.tipo-row-size{display:flex;align-items:center;gap:6px}.tipo-row-size-label{font-family:var(--font-body);font-size:11px;color:var(--ink-dim);white-space:nowrap}.tipo-row-size input{width:56px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:5px 6px;font-family:var(--font-body);font-size:12px}.tipo-row-size span{color:var(--ink-dim)}#tipo-sizes-actions{margin:4px 0 12px}.category-select{flex:1;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:9px 11px;text-align:left;cursor:pointer;font-family:var(--font-body);font-size:13px;display:flex;justify-content:space-between;transition:border-color .12s,box-shadow .12s}.category-select:hover{border-color:var(--border-strong)}.category-row.active .category-select{border-color:var(--azure);background:var(--azure-dim);color:var(--azure-tint);font-weight:600;box-shadow:none}.category-select .count{color:var(--ink-dim);font-weight:400}.category-delete,.image-delete{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-dim);cursor:pointer;font-size:12px;transition:color .12s,border-color .12s,background .12s}.category-delete{padding:9px 11px}.category-delete:hover,.image-delete:hover{color:var(--eosin-tint);border-color:#fca5a5;background:var(--eosin-dim)}.inline-form{display:flex;flex-wrap:wrap;gap:8px}.inline-form input[type=text]{flex:1;min-width:120px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);padding:9px 11px;font-family:var(--font-body);font-size:13px;transition:border-color .12s,box-shadow .12s}.inline-form input[type=text]:focus{outline:none;border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.inline-form input[type=file]{flex:1;color:var(--ink-dim);font-family:var(--font-body);font-size:12px}.inline-form button{flex:none;white-space:nowrap;background:var(--azure);border:1px solid var(--azure);border-radius:var(--radius-sm);color:#fff;padding:9px 16px;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:500;transition:box-shadow .12s}.inline-form button:hover{box-shadow:var(--shadow-md)}.inline-form button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.status-text{font-size:12px;color:var(--ink-dim);margin:8px 0;min-height:1em}.empty-hint{color:var(--ink-dim);font-size:13px;padding:10px 0;line-height:1.5}.image-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}.image-card{position:relative;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-card img{max-width:100%;max-height:100%;object-fit:contain}.image-delete{position:absolute;top:4px;right:4px;width:22px;height:22px;line-height:1;padding:0}.modo-test-toggle{display:inline-flex;align-items:center;gap:6px;margin-left:auto;margin-right:18px;font-size:13px;color:var(--ink-dim);cursor:pointer;-webkit-user-select:none;user-select:none}.modo-test-toggle input{width:15px;height:15px;margin:0;cursor:pointer;accent-color:var(--azure)}.modo-test-toggle input:checked+span{color:var(--ink);font-weight:600}.entrada-pantalla{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg)}.entrada-columnas{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;width:100%}.entrada-tarjeta{display:flex;flex-direction:column;gap:10px;width:100%;max-width:340px;padding:24px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.entrada-tarjeta h2{margin:0 0 6px;font-size:18px;color:var(--ink)}.entrada-tarjeta input{padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.entrada-tarjeta input:focus{outline:none;border-color:var(--azure)}.entrada-tarjeta button{padding:9px 12px;border:none;border-radius:var(--radius-sm);background:var(--azure);color:#fff;font:inherit;font-weight:600;cursor:pointer}.entrada-tarjeta button:disabled{opacity:.6}.entrada-error{min-height:1em;color:#b91c1c;font-size:13px}.entrada-salir{padding:6px 12px;margin-right:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.entrada-salir:hover{border-color:var(--azure)}.menu-docente-barra{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:16px;font-size:14px;color:var(--ink-dim)}.docentes-ayuda{margin:0 0 12px;font-size:13px;color:var(--ink-dim)}.docentes-tabla{width:100%;border-collapse:collapse;margin-bottom:14px;font-size:13px}.docentes-tabla th,.docentes-tabla td{padding:7px 8px;border-bottom:1px solid var(--border);text-align:left}.docentes-tabla th{color:var(--ink-dim);font-weight:600}.docente-usuario{font-family:var(--font-mono, monospace);font-size:12px;color:var(--ink-dim)}.docente-inactivo td{opacity:.55}.docente-acciones{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.docente-acciones button{padding:4px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);font:inherit;font-size:12px;cursor:pointer}.docente-acciones .docente-borrar{color:#b91c1c}.docentes-nuevo input[type=text]{flex:1 1 140px}.sala-dueno{margin-left:8px;padding:1px 7px;border-radius:10px;background:var(--azure-dim);color:var(--azure-tint);font-size:11px;font-weight:500}.menu-ingreso{display:flex;flex-direction:column;gap:36px;width:100%;max-width:980px}.menu-seccion h2{margin:0 0 4px;font-size:20px;color:var(--ink)}.menu-seccion-ayuda{margin:0 0 14px;font-size:13px;color:var(--ink-dim)}.publicas-grilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.publica-tarjeta{display:flex;flex-direction:column;gap:8px;padding:18px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.publica-titulo{font-size:16px;font-weight:600;color:var(--ink)}.publica-candado{font-size:13px}.publica-descripcion{font-size:13px;color:var(--ink);line-height:1.4}.publica-detalle{font-size:12px;color:var(--ink-dim)}.publica-tarjeta input{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.publica-tarjeta button{margin-top:auto;padding:8px 12px;border:none;border-radius:var(--radius-sm);background:var(--azure);color:#fff;font:inherit;font-weight:600;cursor:pointer}.institucion-tarjeta{max-width:400px}.institucion-pestanas{display:flex;gap:4px;padding:3px;margin-bottom:6px;background:var(--panel-2);border-radius:var(--radius-sm)}.entrada-tarjeta .institucion-pestana{flex:1;padding:7px;background:transparent;color:var(--ink-dim);font-weight:500}.entrada-tarjeta .institucion-pestana.sel{background:var(--panel);color:var(--ink);box-shadow:var(--shadow-sm)}.institucion-form{display:flex;flex-direction:column;gap:10px}.sala-publica-box{margin-top:10px;padding:10px 12px;border:1px dashed var(--border);border-radius:var(--radius-sm)}.sala-publica-check{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.sala-publica-detalle{display:flex;flex-direction:column;gap:6px;margin-top:8px}.sala-publica-detalle textarea{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:13px;resize:vertical}.sala-participantes-cupo{display:flex;align-items:center;gap:10px;font-size:13px}.sala-participantes-cupo select{padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:13px}.sala-participantes-detalle{display:flex;flex-direction:column;gap:6px;margin-top:8px}.sala-publica-marca{background:#dcfce7;color:#166534}.consejos-segundos{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--ink)}.consejos-segundos input{width:76px;padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-weight:400}.consejos-lista{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}.consejo-fila{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:start}.consejo-num{padding-top:8px;text-align:right;font-size:13px;font-weight:600;color:var(--ink-dim)}.consejo-fila textarea,.consejos-varios textarea{width:100%;box-sizing:border-box;resize:vertical;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;line-height:1.4}.consejo-fila textarea:focus,.consejos-varios textarea:focus,.consejos-segundos input:focus{outline:none;border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.consejo-acciones{display:flex;gap:4px;padding-top:3px}.consejo-acciones button,.consejos-botones button,.consejos-varios button{padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.consejo-acciones button:hover:not(:disabled),.consejos-botones button:hover,.consejos-varios button:hover{border-color:var(--azure)}.consejo-acciones button:disabled{opacity:.35;cursor:default}.consejo-acciones .consejo-quitar:hover{border-color:#fca5a5;color:var(--eosin-tint);background:var(--eosin-dim)}.consejos-varios{margin:14px 0;font-size:13px}.consejos-varios summary{cursor:pointer;color:var(--azure-tint);margin-bottom:8px}.consejos-varios button{margin-top:6px}.consejos-pie{display:flex;align-items:center;gap:14px;margin-top:6px}.consejos-guardar{padding:9px 18px;border:1px solid var(--azure);border-radius:var(--radius-sm);background:var(--azure);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.consejos-guardar:disabled{opacity:.5;cursor:default}.consejos-estado{font-size:13px;color:var(--ink-dim)}.consejos-estado.pendiente{color:#b45309}.consejos-estado.ok{color:#15803d}.consejos-estado.error{color:var(--eosin-tint)}#casos-view .admin-panel:first-child{width:320px}.casos-buscar{width:100%;box-sizing:border-box;margin-bottom:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font-family:var(--font-body);font-size:13px}.casos-lista{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.casos-categoria{margin-top:8px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim)}.casos-botones-lista{display:flex;flex-direction:column;gap:8px}.casos-cabecera{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.casos-estado{font-size:12px;color:var(--ink-dim)}.casos-estado.pendiente{color:var(--eosin-tint);font-weight:600}.casos-bloque{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px 14px;margin:0 0 14px;display:flex;flex-direction:column;gap:10px;max-width:980px}.casos-bloque legend{padding:0 6px;font-weight:600;font-size:13px}.casos-fila{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.casos-campo{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-dim)}.casos-campo input,.casos-campo select,.casos-campo textarea,.casos-bloque>.casos-fila>select{padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font-family:var(--font-body);font-size:13px;line-height:1.4}.casos-campo textarea{width:100%;box-sizing:border-box;resize:vertical}.casos-campo input:focus,.casos-campo select:focus,.casos-campo textarea:focus{outline:none;border-color:var(--azure);box-shadow:0 0 0 3px var(--azure-dim)}.casos-chico input,.casos-chico select{width:110px}.casos-nota{margin:0;padding:0;font-size:12px}.casos-boton{width:auto;margin:0}.casos-tabla{width:100%}.casos-tabla tr.casos-falta td:first-child{color:var(--eosin-tint)}.casos-pregunta{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px dashed var(--border)}.casos-pregunta-cab{display:flex;justify-content:space-between;align-items:center}.casos-mini{padding:2px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);cursor:pointer}.casos-mini:disabled{opacity:.4;cursor:default}.casos-acciones{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:30px}.casos-peligro{color:var(--eosin-tint)}.manuales-subir{display:flex;flex-direction:column;gap:10px;max-width:760px;padding:14px;margin-bottom:18px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm)}.manuales-subir-titulo{font-weight:600;font-size:13px}.manuales-fila{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.manuales-estado{font-size:12px;color:var(--ink-dim)}.manuales-lista{display:flex;flex-direction:column;gap:8px;max-width:980px}.manuales-item{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.manuales-cab{display:flex;gap:12px;align-items:flex-start}.manuales-icono{flex:none;width:38px;height:46px;border-radius:4px;background:#c62828;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;box-sizing:border-box}.manuales-datos{flex:1;min-width:0;font-size:13px}.manuales-desc{margin-top:2px;color:var(--ink);white-space:pre-wrap}.manuales-acciones{display:flex;flex-wrap:wrap;gap:4px;flex:none}a.casos-mini{text-decoration:none;font-size:13px}#legado-view{flex:1;min-height:0;overflow-y:auto}#sedimento-view .section-tabs{display:flex;gap:6px}.sed-grupo{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim);margin:10px 0 6px}.sed-aviso{background:var(--azure-dim);color:var(--azure-tint);border-radius:var(--radius-sm);padding:8px 10px;font-size:13px;margin-bottom:12px}.sed-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 16px;margin-bottom:14px}.sed-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-dim)}.sed-form input,.sed-form select{font-size:13px;padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink)}.sed-par{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sed-par input{width:70px}.sed-botones{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.sed-subir{display:flex;flex-direction:column;font-size:12px;color:var(--ink-dim)}.sed-imagenes .image-card{background-image:linear-gradient(45deg,#e6e9ee 25%,transparent 25%),linear-gradient(-45deg,#e6e9ee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e6e9ee 75%),linear-gradient(-45deg,transparent 75%,#e6e9ee 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.sed-tabla{width:100%;border-collapse:collapse;font-size:13px}.sed-tabla th,.sed-tabla td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border)}.sed-tabla-grupo td{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim);background:var(--panel-2)}.sed-tabla select.sed-anormal{border-color:#f59e0b;background:#fffbeb}.sed-unidad{color:var(--ink-dim);font-size:12px}.sed-sin-img{font-size:11px;color:#b45309;margin-left:4px}.sed-ver{font-size:13px;color:var(--azure);text-decoration:none}.recortador-fondo{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c12b8;z-index:1000;display:flex;align-items:center;justify-content:center}.recortador{width:min(1200px,96vw);height:min(860px,94vh);background:#12161e;color:#e6ebf2;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-body)}.recortador-barra,.recortador-pie{display:flex;align-items:center;gap:14px;padding:10px 14px;font-size:13px;background:#181d27;flex-wrap:wrap}.recortador-barra select{font-size:13px;padding:5px 8px;max-width:280px}.recortador-ayuda{font-size:12px;color:#8a9bb0;padding:6px 14px;background:#151a23}.recortador-espacio{flex:1}.recortador-lienzo{flex:1;position:relative;min-height:0}.recortador-lienzo canvas{position:absolute;top:0;right:0;bottom:0;left:0;cursor:crosshair}.recortador-vacio{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#8a9bb0;pointer-events:none}.recortador button,.recortador-boton{background:#232b38;border:1px solid #334055;color:#dbe4f0;border-radius:8px;padding:7px 12px;font-size:13px;cursor:pointer}.recortador button.principal{background:#4f5fd6;border-color:#6b7bf0;color:#fff}.recortador button:disabled{opacity:.45;cursor:not-allowed}.recortador-pie canvas{border:1px solid #334055;border-radius:6px}.sonidos-sectores{margin-bottom:8px;flex-wrap:wrap}.sonidos-sector{margin:22px 0 10px;font-size:15px}.sonidos-equipo{max-width:1100px;margin-bottom:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.sonidos-equipo-titulo{padding:10px 14px;font-weight:700;font-size:14px;border-bottom:1px solid var(--border)}.sonidos-equipo-titulo span{font-weight:400;font-size:12px;color:var(--ink-dim);margin-left:6px}.sonidos-fila{display:flex;gap:14px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);font-size:13px}.sonidos-fila:last-child{border-bottom:none}.sonidos-datos{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.sonidos-cuando{color:var(--ink-dim);font-size:12px}.sonidos-tipo{display:inline-block;font-size:11px;padding:1px 7px;border-radius:99px;margin-left:4px;background:#788caa2e}.sonidos-tipo.continuo{background:#4f5fd638}.sonidos-tipo.velocidad{background:#d6963c40}.sonidos-origen{font-size:12px}.sonidos-origen.codigo{color:var(--ink-dim)}.sonidos-origen.base{color:#6aa0d8}.sonidos-origen.grabacion{color:#4caf73;font-weight:600}.sonidos-msg{font-size:12px;color:#4caf73}.sonidos-msg.error{color:var(--eosin-tint)}.sonidos-controles{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;flex:none;max-width:520px}.sonidos-probar{min-width:86px}.sonidos-vol{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-dim)}.sonidos-vol input{width:110px}.sonidos-vol span{min-width:42px}.sonidos-subir{cursor:pointer}@media (max-width: 760px){.sonidos-fila{flex-direction:column;align-items:stretch}.sonidos-controles{justify-content:flex-start}}.sonidos-controles .casos-mini{padding:5px 10px;font-size:12px}.inst-subpestanas{margin:12px 0 14px;border-radius:var(--radius-sm)}.inst-bloque-salas{margin-top:22px}.docente-acciones select{padding:4px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:12px}.inline-form button.inst-borrar{background:#fff;color:#b91c1c;border:1px solid #fca5a5}.inline-form button.inst-borrar:hover{background:#fef2f2}.fd-col{text-align:center!important;width:120px}.fd-todos{padding:0 6px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;font-size:11px;font-weight:400;cursor:pointer}.fd-aviso{margin-left:6px;font-size:11px;color:#b45309}.fd-pie{margin-top:14px}.fd-estado{margin-left:10px;font-size:13px;color:var(--ink-dim)}.fd-col{width:170px}.fd-col select{padding:3px 6px;border:1px solid var(--border);border-radius:6px;font:inherit;font-size:12px}.fd-col select[data-estado=visible]{background:#ecfdf5;border-color:#6ee7b7}.fd-col select[data-estado=candado]{background:#fffbeb;border-color:#fcd34d}.fd-col select[data-estado=oculto]{background:#f3f4f6;color:#6b7280}.codigo-reciente{margin:0 0 14px;padding:12px 14px;border:1px solid #86efac;border-radius:var(--radius-sm);background:#f0fdf4}.codigo-reciente .docentes-ayuda{margin:6px 0 0}.codigo-reciente-fila{display:flex;align-items:center;gap:10px;margin-top:6px}.codigo-reciente-fila code{font-size:20px;font-weight:700;letter-spacing:.08em;color:var(--ink)}.codigo-reciente-fila button{padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);font:inherit;font-size:12.5px;cursor:pointer}.codigo-vencido{color:#b91c1c;font-weight:600}.sala-frotis-marca{background:#ede9fe;color:#5b21b6}.frotis-sala-ordenes{display:flex;flex-direction:column;gap:8px}.frotis-sala-orden{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.frotis-sala-num{flex:0 0 auto;font-weight:600;font-size:13px;color:var(--ink-dim)}.frotis-sala-orden select{flex:1 1 auto;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.frotis-sala-cantidad{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--ink-dim)}.frotis-sala-cantidad input{width:64px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.frotis-sala-diagnostico{margin-top:14px}.frotis-sala-resultados{margin-top:22px;padding:12px 16px;background:var(--panel);border:1px solid var(--border);border-radius:12px}.frotis-sala-resultados>summary{cursor:pointer;font-weight:600}.frotis-sala-resultados-cuerpo{margin-top:10px}.frotis-sala-res-acciones{display:flex;gap:8px}.frotis-sala-res-acciones .add-analisis-btn{width:auto;margin:0}.frotis-sala-borrar{color:#b91c1c}.frotis-sala-est{margin-top:8px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm)}.frotis-sala-est>summary{cursor:pointer}.frotis-sala-envio{margin-top:10px}.frotis-sala-tabla{margin-top:4px}.frotis-sala-tabla td:not(:first-child),.frotis-sala-tabla th:not(:first-child){text-align:right}.frotis-sala-lejos{color:#b91c1c;font-weight:700}.frotis-sala-repeticiones{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:14px}.frotis-sala-repeticiones select{padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.tm-columnas{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.tm-tarjeta{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.tm-tarjeta h3{margin:0;font-size:16px}.tm-imagen{height:150px;border-radius:10px;border:1px solid var(--border);background-size:cover;background-position:center}.tm-imagen-acciones{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tm-boton{padding:5px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);font:inherit;font-size:13px;cursor:pointer}.tm-boton:hover{border-color:var(--azure)}.tm-gris,.tm-estado{font-size:12.5px;color:var(--ink-dim)}.tm-campo{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.tm-campo input,.tm-campo textarea{padding:7px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-weight:400;font-size:14px;resize:vertical}.tm-guardar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px}.tm-estado-general{font-size:13px;color:var(--ink-dim)}.tm-estado-general.ok{color:#15803d}.tm-estado-general.error{color:#b91c1c}.inst-salas-docente{margin-top:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.inst-salas-docente-titulo{font-size:15px}.inst-salas-docente-titulo .docente-usuario{margin-left:6px}.sa-form{display:flex;flex-direction:column;gap:12px;max-width:440px}.sa-form label:not(.sala-publica-check){display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.sa-form input[type=text],.sa-form input[type=password]{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-weight:400}.sa-form-pie{display:flex;align-items:center;justify-content:flex-end;gap:12px}.sa-estado{font-size:13px;color:var(--ink-dim)}.sa-estado.ok{color:#15803d}.sa-estado.error{color:#b91c1c}.inst-editar-velo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:24px;background:#0f172a8c;overflow-y:auto}.inst-editar-ventana{width:min(1400px,100%);border-radius:14px;background:var(--bg, #f5f6fa);box-shadow:0 20px 60px #00000059}.inst-editar-cab{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);border-radius:14px 14px 0 0;background:var(--panel)}.inst-editar-cuerpo{padding:16px}
