:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--azul:#2563eb;--azul-oscuro:#1e3a8a;--azul-claro:#eff6ff;--borde:#e2e8f0;--verde:#0d9488;--rojo:#dc2626;--gris:#64748b;--bg:#f4f6fb;--superficie:#fff;--radio:12px;--radio-sm:8px;--sombra:0 1px 3px #0f172a14;--sombra-md:0 8px 24px #0f172a1f;font-family:system-ui,-apple-system,Segoe UI,Inter,sans-serif}body{color:#22282e;background:#f4f6f8;margin:0}.aviso-no-autorizado{text-align:center;background:#fff;border-radius:.5rem;max-width:32rem;margin:4rem auto;padding:2rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--azul);color:#fff;align-items:center;gap:2rem;padding:.75rem 1.5rem;display:flex}.app-header h1{white-space:nowrap;margin:0;font-size:1.1rem}.app-header nav{flex:1;gap:1.25rem;display:flex}.app-header nav a{color:#cfe0ef;border-bottom:2px solid #0000;padding:.25rem 0;font-size:.95rem;text-decoration:none}.app-header nav a.active{color:#fff;border-bottom-color:#fff}.app-user{align-items:center;gap:.75rem;font-size:.9rem;display:flex}.app-user button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff80;border-radius:.25rem;padding:.3rem .6rem}.app-main{width:100%;max-width:72rem;margin:0 auto;padding:1.5rem 2rem}.page h2{margin-top:0}.form-card{border:1px solid var(--borde);background:#fff;border-radius:.5rem;max-width:40rem;margin-bottom:1.5rem;padding:1.25rem}.form-inline{flex-wrap:wrap;align-items:center;gap:.5rem;max-width:none;display:flex}fieldset{border:1px solid var(--borde);border-radius:.5rem;margin-bottom:1rem;padding:1rem}legend{color:var(--azul);padding:0 .4rem;font-weight:600}label{color:#45505a;flex-direction:column;gap:.25rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.new-patient-grid{grid-template-columns:1fr 1fr;gap:0 1rem;display:grid}input,select{border:1px solid var(--borde);border-radius:.3rem;padding:.45rem .5rem;font-size:.95rem}button{background:var(--azul);color:#fff;cursor:pointer;border:none;border-radius:.3rem;padding:.5rem 1rem;font-size:.9rem}button:disabled{background:var(--gris);cursor:not-allowed}.filters{border:1px solid var(--borde);background:#fff;border-radius:.5rem;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;padding:1rem;display:flex}.data-table{border-collapse:collapse;border:1px solid var(--borde);background:#fff;border-radius:.5rem;width:100%;margin-bottom:1rem;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--borde);padding:.55rem .7rem;font-size:.9rem}.data-table th{background:var(--azul-claro);color:var(--azul)}.row-selected{background:var(--azul-claro)}.row-inactive{opacity:.55}.badge{color:#333;background:#e4e8eb;border-radius:1rem;padding:.15rem .5rem;font-size:.78rem;display:inline-block}.badge-scheduled,.badge-images_received{color:#1d4d7a;background:#dbeafe}.badge-reported{color:var(--verde);background:#d9f2e3}.badge-cancelled{color:var(--rojo);background:#f8d9d7}.badge-pending{color:#8a5a00;background:#fdecc8}.badge-approved{color:var(--verde);background:#d9f2e3}.badge-rejected{color:var(--rojo);background:#f8d9d7}.pagination{align-items:center;gap:1rem;font-size:.9rem;display:flex}.patient-suggestions{border:1px solid var(--borde);border-radius:.3rem;max-width:30rem;margin:0;padding:0;list-style:none}.patient-suggestions li button{text-align:left;color:#22282e;border:none;border-bottom:1px solid var(--borde);background:#fff;width:100%;padding:.4rem .6rem}.hint{color:var(--gris);font-size:.85rem}.error{color:var(--rojo);font-weight:600}.success{color:var(--verde);font-weight:600}.notif-bell{position:relative}.notif-bell-button{color:#fff;cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.3rem;line-height:1;position:relative}.notif-badge{background:var(--rojo);color:#fff;text-align:center;border-radius:1rem;min-width:1.1rem;padding:.05rem .35rem;font-size:.65rem;font-weight:700;position:absolute;top:-.2rem;right:-.2rem}.notif-dropdown{color:#22282e;border:1px solid var(--borde);z-index:50;background:#fff;border-radius:.4rem;width:22rem;max-height:26rem;position:absolute;top:2.5rem;right:0;overflow-y:auto;box-shadow:0 6px 18px #0000002e}.notif-dropdown-header{border-bottom:1px solid var(--borde);padding:.6rem .8rem;font-weight:700}.notif-empty{color:var(--gris);padding:.8rem}.notif-item{border-bottom:1px solid var(--borde);padding:.6rem .8rem;font-size:.88rem}.notif-item.notif-read{opacity:.55}.notif-msg{margin-bottom:.3rem}.notif-meta{color:var(--gris);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.notif-mark{background:var(--azul);color:#fff;cursor:pointer;border:none;border-radius:.3rem;padding:.15rem .5rem;font-size:.75rem}.row-clickable{cursor:pointer}.row-detail>td{background:#f8fafc}.compliance-panel{flex-wrap:wrap;gap:1.5rem;padding:1rem;display:flex}.compliance-section{border:1px solid var(--borde);background:#fff;border-radius:.4rem;flex-direction:column;flex:20rem;gap:.5rem;padding:1rem;display:flex}.compliance-section h4{margin:0 0 .3rem}.compliance-section label{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.compliance-list{margin:0 0 .5rem;padding:0;font-size:.85rem;list-style:none}.compliance-list li{border-bottom:1px dashed var(--borde);padding:.25rem 0}.signature-wrap{flex-direction:column;gap:.3rem;display:flex}.signature-canvas{border:1px dashed var(--azul);touch-action:none;background:#fff;border-radius:.3rem;width:100%;max-width:400px}.link-button{color:var(--azul);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.8rem;text-decoration:underline}*{box-sizing:border-box}body{background:var(--bg);color:#1e293b;-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{color:#0f172a;letter-spacing:-.01em}a{color:var(--azul)}.app-shell{background:var(--bg);min-height:100vh}.app-header{background:linear-gradient(135deg, var(--azul-oscuro), var(--azul));box-shadow:var(--sombra-md);z-index:20;padding:.85rem 2rem;position:sticky;top:0}.app-header h1{margin:0;font-size:1.1rem;font-weight:700}.app-header nav a{border-bottom:none;border-radius:999px;padding:.4rem .85rem;transition:background .15s}.app-header nav a:hover{background:#ffffff24}.app-header nav a.active{color:#fff;background:#ffffff3d;font-weight:600}.app-user button{border-radius:999px;transition:background .15s}.app-user button:hover{background:#fff3}.app-main{padding:2rem}button{border-radius:var(--radio-sm);letter-spacing:.01em;box-shadow:var(--sombra);font-weight:600;transition:transform 50ms,box-shadow .15s,background .15s}button:hover:not(:disabled){background:var(--azul-oscuro);box-shadow:var(--sombra-md)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--azul);outline-offset:2px}.filters,.form-card,.form-inline,.compliance-panel,.patient-suggestions{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra)}.new-patient-grid{gap:1rem}.data-table{border-radius:var(--radio);box-shadow:var(--sombra);border:1px solid var(--borde)}.data-table th{background:var(--azul-claro);color:var(--azul-oscuro);text-transform:uppercase;letter-spacing:.04em;padding:.75rem .9rem;font-size:.78rem}.data-table td{border-top:1px solid var(--borde);padding:.7rem .9rem}.data-table tbody tr:hover{background:#f8fafc}.row-clickable:hover{cursor:pointer;background:var(--azul-claro)!important}.badge{border-radius:999px;padding:.2rem .65rem;font-size:.75rem;font-weight:600}.pagination button{box-shadow:none;background:var(--superficie);color:var(--azul);border:1px solid var(--borde)}.pagination button:hover:not(:disabled){background:var(--azul-claro)}.notif-dropdown{border-radius:var(--radio);box-shadow:var(--sombra-md);border:1px solid var(--borde)}.link-button{color:var(--azul);box-shadow:none;background:0 0;padding:0;font-weight:500;text-decoration:underline}.link-button:hover{color:var(--azul-oscuro);background:0 0}.aviso-no-autorizado{text-align:center;background:var(--superficie);border-radius:var(--radio);max-width:420px;box-shadow:var(--sombra-md);margin:4rem auto;padding:2rem}input,select,textarea{border:1px solid var(--borde);border-radius:var(--radio-sm);padding:.5rem .7rem;font-family:inherit;font-size:.9rem}@media (width<=900px){.app-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.app-header nav{flex-wrap:wrap}.app-main{padding:1.25rem}}.wizard-steps{flex-wrap:wrap;gap:.4rem;margin:1rem 0 1.25rem;display:flex}.wizard-step{text-align:center;border-radius:var(--radio-sm);background:var(--borde);color:#475569;flex:1;min-width:160px;padding:.6rem .75rem;font-size:.85rem;font-weight:600}.wizard-step.active{background:var(--azul);color:#fff}.wizard-step.done{color:#1e3a8a;background:#93c5fd}.wizard-body{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra);padding:1.5rem}.wizard-actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.dropzone{border:2px dashed var(--borde);border-radius:var(--radio);background:var(--bg);flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;transition:border-color .15s,background .15s;display:flex}.dropzone.drag-active{border-color:var(--azul);background:var(--azul-claro)}.progress-bar{background:var(--borde);border-radius:999px;width:100%;height:.6rem;overflow:hidden}.progress-bar-fill{background:var(--azul);height:100%;transition:width .2s}.shell2{grid-template-columns:15rem 1fr;min-height:100vh;display:grid}.shell2-lateral{background:var(--azul-oscuro);color:#fff;flex-direction:column;height:100vh;padding:1rem .75rem;display:flex;position:sticky;top:0;overflow-y:auto}.shell2-marca{flex-direction:column;padding:.25rem .75rem 1rem;display:flex}.shell2-marca strong{letter-spacing:.03em;font-size:1.05rem;line-height:1.25}.shell2-marca span{color:#bfdbfe;font-size:.8rem}.shell2-grupo{flex-direction:column;margin-bottom:1.25rem;display:flex}.shell2-titulo{text-transform:uppercase;letter-spacing:.1em;color:#fff;border-bottom:1px solid #ffffff59;margin:0 0 .35rem;padding:.35rem .75rem;font-size:.85rem;font-weight:700}.shell2-grupo a{color:#dbeafe;border-radius:var(--radio-sm);padding:.5rem .75rem;font-size:.93rem;text-decoration:none}.shell2-grupo a:hover{background:#ffffff14}.shell2-grupo a.activo{color:var(--azul-oscuro);background:#fff;font-weight:600}.shell2-usuario{border-top:1px solid #ffffff26;align-items:center;gap:.5rem;margin-top:auto;padding:.75rem;font-size:.85rem;display:flex}.shell2-usuario span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.shell2-usuario button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff80;border-radius:.25rem;padding:.25rem .6rem}.shell2-contenido{width:100%;max-width:76rem;padding:1.5rem 2rem}@media (width<=800px){.shell2{grid-template-columns:1fr}.shell2-lateral{height:auto;position:static}.shell2-contenido{padding:1rem}}.tarjetas-estado{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem;margin:1rem 0 1.5rem;display:grid}.tarjeta-estado{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra);color:inherit;flex-direction:column;gap:.25rem;padding:1rem;text-decoration:none;display:flex}.tarjeta-estado:hover{box-shadow:var(--sombra-md)}.tarjeta-estado .numero{font-size:2rem;font-weight:700;line-height:1}.tarjeta-estado .etiqueta{color:var(--gris);font-size:.85rem}.acciones-rapidas{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.acciones-rapidas a{color:var(--azul);text-decoration:none}.acciones-rapidas a.boton-principal{background:var(--azul);color:#fff;border-radius:var(--radio-sm);padding:.6rem 1.1rem;font-weight:600}.opciones-grandes{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;max-width:50rem;margin-top:1rem;display:grid}.opcion-grande{background:var(--superficie);border:2px solid var(--borde);border-radius:var(--radio);color:inherit;flex-direction:column;gap:.5rem;padding:1.25rem;text-decoration:none;display:flex}.opcion-grande:hover{border-color:var(--azul);box-shadow:var(--sombra-md)}.opcion-grande strong{color:var(--azul-oscuro);font-size:1.15rem}.opcion-pregunta{text-transform:uppercase;letter-spacing:.05em;color:var(--gris);font-size:.8rem}.estado-linea{flex-wrap:wrap;gap:.25rem 1rem;margin:0;padding:.5rem 0 1rem;list-style:none;display:flex}.estado-linea li{color:var(--gris);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.estado-linea .punto{border:2px solid var(--borde);border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;display:inline-flex}.estado-linea li.hecho .punto{background:var(--verde);border-color:var(--verde);color:#fff}.estado-linea li.actual{color:var(--azul-oscuro);font-weight:700}.estado-linea li.actual .punto{background:var(--azul);border-color:var(--azul);color:#fff}.estado-cancelado{color:var(--rojo);font-weight:600}.ficha-cabecera{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.ficha-cabecera h2{margin:0 0 .25rem}.ficha-siguiente{background:var(--azul-claro);border-left:4px solid var(--azul);border-radius:var(--radio-sm);margin:0 0 1.25rem;padding:.75rem 1rem}.ficha-datos{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem 1.5rem;margin-bottom:1.5rem;padding:1rem 1.25rem;display:grid}.ficha-dato{flex-direction:column;gap:.15rem;display:flex}.ficha-dato span{text-transform:uppercase;letter-spacing:.05em;color:var(--gris);font-size:.75rem}.ficha-dato strong{word-break:break-word;font-weight:600}body.informe-visor-maximizado .app-main{max-width:none;padding:1rem 1.25rem}textarea{border:1px solid var(--borde);resize:vertical;border-radius:.3rem;width:100%;padding:.5rem;font-family:inherit;font-size:.9rem}.filters label.check{flex-direction:row;align-items:center;gap:.4rem;margin-bottom:0}.filters label.check input{width:auto}.ok{color:var(--verde);font-weight:600}.btn-link{color:var(--azul);cursor:pointer;background:0 0;border:none;padding:0 .4rem;font-size:.85rem;text-decoration:none}.btn-link.danger{color:var(--rojo)}.badge-report-draft{color:var(--gris);background:#eceff1}.badge-report-preliminary{color:#8a6d00;background:#fff3cd}.badge-report-signed{color:var(--verde);background:#d9f2e3}.badge-report-amended{color:var(--azul);background:#dbeafe}tr.inactiva{opacity:.55}.informe-cabecera{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.informe-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.25rem;display:grid}.visor .ohif-frame{border:1px solid var(--borde);background:#000;border-radius:.5rem;width:100%;height:70vh;min-height:480px}.visor-toolbar{justify-content:flex-end;margin-bottom:.5rem;display:flex}.informe-grid-maximizado{grid-template-columns:minmax(0,1fr) 380px}.informe-grid-maximizado .ohif-frame{height:calc(100vh - 160px);min-height:600px}.informe-grid-maximizado .editor{max-height:calc(100vh - 160px);overflow-y:auto}.editor{border:1px solid var(--borde);background:#fff;border-radius:.5rem;padding:1rem}.editor .plantilla-select{max-width:22rem}.acciones{flex-wrap:wrap;gap:.6rem;margin-top:.5rem;display:flex}button.primario{background:var(--verde)}.plantillas-grid{grid-template-columns:minmax(20rem,26rem) 1fr;align-items:start;gap:1.5rem;display:grid}.form{border:1px solid var(--borde);background:#fff;border-radius:.5rem;padding:1.25rem}.primario{background:var(--azul)}.primario:hover:not(:disabled){background:var(--azul-oscuro)}.danger{background:var(--rojo)}.danger:hover:not(:disabled){background:#b91c1c}.btn-link{color:var(--azul);box-shadow:none;background:0 0;padding:0;font-weight:500;text-decoration:underline}.btn-link:hover{color:var(--azul-oscuro);background:0 0}.informe-grid{gap:1.25rem;display:grid}.informe-cabecera,.form,.editor,.plantillas-grid,.filters{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra);padding:1.25rem}.visor,.ohif-frame{border-radius:var(--radio);box-shadow:var(--sombra);border:1px solid var(--borde);overflow:hidden}.plantilla-select{border-radius:var(--radio-sm);border:1px solid var(--borde);padding:.5rem .7rem}.check,.ok{color:var(--verde);font-weight:600}.acciones{flex-wrap:wrap;gap:.6rem;display:flex}.informe-estudio-previo{background:#eef8f1;border-left:4px solid #2f8f5b}.informe-estudio-previo h3{margin:0 0 6px}.informe-estudio-previo-item{border-top:1px solid #cfe8d7;margin-top:10px;padding-top:10px}.informe-estudio-previo-item:first-of-type{border-top:none;padding-top:0}.informe-previo-detalle summary{cursor:pointer;color:#2f6f46}.informe-previo-detalle{margin-top:6px}.tarjeta-estado.destacada{border-color:var(--azul);background:var(--azul-claro)}@media (width<=900px){.informe-grid,.plantillas-grid{grid-template-columns:1fr}}body.pagina-informe .shell2-contenido{max-width:none;padding:.75rem 1rem}body.pagina-informe .informe-grid{grid-template-columns:minmax(0,2fr) minmax(24rem,1fr)}body.pagina-informe .visor .ohif-frame{height:calc(100vh - 140px);min-height:640px}body.informe-visor-maximizado .shell2{grid-template-columns:1fr}body.informe-visor-maximizado .shell2-lateral{display:none}body.informe-visor-maximizado .shell2-contenido{max-width:none;padding:1rem 1.25rem}body.pagina-informe .informe-grid-maximizado{grid-template-columns:minmax(0,1fr) 380px}@media (width<=900px){body.pagina-informe .informe-grid{grid-template-columns:1fr}}.compartir-wrap{box-sizing:border-box;background:#f3f5fa;justify-content:center;align-items:flex-start;min-height:100vh;padding:2rem 1rem;display:flex}.compartir-card,.compartir-doc{box-sizing:border-box;color:#1c2540;background:#fff;border-radius:14px;width:100%;padding:2rem;box-shadow:0 6px 24px #141e4614}.compartir-card{text-align:center;flex-direction:column;gap:1rem;max-width:420px;margin-top:10vh;display:flex}.compartir-card h1{color:#253a85;margin:0;font-size:1.2rem}.compartir-pin{letter-spacing:.6rem;text-align:center;color:#1c2540;background:#fff;border:1px solid #c7cfe6;border-radius:10px;padding:.6rem;font-size:2rem}.compartir-card button,.compartir-btn{color:#fff;cursor:pointer;background:#3b5bdb;border:0;border-radius:10px;padding:.75rem 1.2rem;font-size:1rem;text-decoration:none;display:inline-block}.compartir-card button:disabled{opacity:.5;cursor:default}.compartir-aviso{color:#6b7391;font-size:.8rem}.compartir-doc{max-width:860px}.compartir-acciones{flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;display:flex}.compartir-datos{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:1rem 0 1.5rem;display:grid}.compartir-datos span{color:#6b7391;font-size:.75rem;display:block}.compartir-texto{line-height:1.55}.compartir-firma{flex-direction:column;gap:.15rem;margin-top:2rem;display:flex}.compartir-firma img{align-self:flex-start;max-width:220px;max-height:70px}.compartir-panel{border-top:1px solid #dfe3ef;margin-top:2rem;padding-top:1rem}.compartir-form{flex-wrap:wrap;gap:.5rem;margin:.6rem 0;display:flex}.compartir-form input{border:1px solid #c7cfe6;border-radius:8px;flex:1;min-width:220px;padding:.5rem}.compartir-nuevo{word-break:break-all;background:#eef2ff;border-radius:10px;margin:.8rem 0;padding:1rem}.compartir-codigo{letter-spacing:.3rem;font-size:1.6rem}.compartir-tabla{border-collapse:collapse;width:100%;margin-top:.8rem;font-size:.9rem}.compartir-tabla th,.compartir-tabla td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e8f2;padding:.4rem .5rem}@media print{.compartir-acciones,.compartir-aviso a{display:none!important}.compartir-wrap{background:#fff;padding:0}.compartir-doc{box-shadow:none;padding:0}}.lote-barra{flex-wrap:wrap;align-items:center;gap:.6rem;margin:.8rem 0;display:flex}.lote-barra button{color:#fff;cursor:pointer;background:#3b5bdb;border:0;border-radius:8px;padding:.55rem .9rem}.lote-barra button:disabled{opacity:.45;cursor:default}.lote-resultado{background:#eef2ff;border-radius:10px;margin:.8rem 0;padding:1rem}.lote-cerrar{color:#253a85;cursor:pointer;background:#fff;border:1px solid #c7cfe6;border-radius:6px;margin-left:1rem;padding:.2rem .6rem}
