@font-face{font-family:Odin;src:url('/odin-rounded-bold.otf') format('opentype');font-weight:700;font-display:swap}
/* Colores de seguimiento: fondo de toda la fila y estado siempre escrito. */
.repair-row{--status-bg:#f0f4f6;--status-color:#52616b;--status-badge:#dfe6eb}
.repair-row[data-status="Recibido"]{--status-bg:#edf5ff;--status-color:#24558c;--status-badge:#d7e8fc}
.repair-row[data-status="En diagnóstico"]{--status-bg:#f3edfc;--status-color:#694396;--status-badge:#e5d8f7}
.repair-row[data-status="Pendiente de aceptación"]{--status-bg:#fff9df;--status-color:#785c0c;--status-badge:#f9ecb2}
.repair-row[data-status="Esperando pieza"]{--status-bg:#fff0e3;--status-color:#934710;--status-badge:#fcddbf}
.repair-row[data-status="En reparación"]{--status-bg:#e5f7fa;--status-color:#176375;--status-badge:#c5eaf0}
.repair-row[data-status="En pruebas"]{--status-bg:#e8f0fb;--status-color:#315d91;--status-badge:#d4e4f7}
.repair-row[data-status="Listo"]{--status-bg:#eaf7e8;--status-color:#326329;--status-badge:#d0ebc9}
.repair-row[data-status="Cliente avisado"]{--status-bg:#e1f5e9;--status-color:#247051;--status-badge:#c4e9d4}
.repair-row[data-status="Entregado"]{--status-bg:#f0f2f4;--status-color:#4f5c66;--status-badge:#dfe4e8}
.repair-row[data-status="Revisión en garantía"]{--status-bg:#f1ebfb;--status-color:#69518d;--status-badge:#e3d6f4}
.repair-row[data-status="Cancelado"]{--status-bg:#fdeeed;--status-color:#923b36;--status-badge:#f8d6d3}
.repair-row>td{background:var(--status-bg)}
.repair-row>td:first-child{box-shadow:inset 4px 0 var(--status-color)}
.repair-row td small{color:#4f646d}
.repair-row .badge{background:var(--status-badge);color:var(--status-color);font-weight:600}
.repair-row:hover>td,.repair-row:focus-within>td{background-image:linear-gradient(#00000005,#00000005)}
:root{--green:#0d5468;--lime:#cfefe5;--muted:#637d84;--border:#dce8e8;color:#163d4b;background:#f3f7f8}
h1,h2{font-family:Odin,'Segoe UI',sans-serif;font-weight:700;letter-spacing:0}h1{font-size:38px}
aside{background:linear-gradient(170deg,#0b3d5a 0%,#0e6172 75%,#14877f 100%);color:#e4f5f1}
.brand{display:block;background:white;border-radius:12px;padding:10px;line-height:0}
.brand img{width:100%;height:auto;display:block}
.aside-sub{color:#c0ddd9;text-align:center;letter-spacing:1.6px;margin-top:16px;margin-bottom:32px}
.nav-item{color:#e0eeed}.nav-item.active{background:#d0f0e5;color:#104e58;box-shadow:inset 3px 0 #45b596}
.server-label i{background:#4ac39e}.server-label small{color:#c4dfdc}.logout{color:#d9e9e7;border-color:#ffffff30}
.eyebrow{color:#167a80}.stats .accent{background:#e0f3ed;border-color:#c9e9de}.stats strong{color:#0b5267}
button,.button{border-radius:9px}.nav-item.active:hover{filter:brightness(.97)}
input:focus,select:focus,textarea:focus{border-color:#24998f;box-shadow:0 0 0 3px #e0f3ed}
button:focus-visible,a:focus-visible{outline-color:#36ab9a}
.badge{background:#e7f0f8;color:#225c7d}.badge.ready{background:#d9f2e8;color:#17614e}.badge.closed{background:#eff2f3;color:#61767b}
.empty>span{color:#2a9c92}.print-actions{background:#edf7f5}#toast{background:#0c5365}
.login-brand{background:linear-gradient(145deg,#0a3e5d,#167c86 68%,#42b493);flex-direction:column;align-items:center;flex-wrap:nowrap}
.login-logo-card{background:white;padding:26px 24px;border-radius:24px;width:90%;max-width:440px;box-shadow:0 20px 65px #072f3c35}
.login-logo-card img{display:block;width:100%;height:auto}.login-brand small{color:#e4f5f1;font-size:19px;margin-top:28px}
.login h1{font-size:36px}.login{max-width:560px}.login form button{background:linear-gradient(110deg,#157e80,#0b4865)}
@media(max-width:760px){aside{padding:14px 16px}.brand{width:140px;padding:5px 8px;border-radius:8px}.logout{top:30px;max-width:46%;text-align:right}.login-brand{padding:24px}.login-logo-card{max-width:230px;padding:12px 20px;border-radius:12px}.login h1{font-size:31px}h1{font-size:32px}}

.customer-search-box{background:#edf7f5;border:1px solid #d5eae5;border-radius:10px;padding:14px}.customer-search-box small{display:block;color:#54747b;font-size:11px;margin-top:8px}#repair-customer-select[size]:not([size="1"]){min-height:130px}#repair-customer-select option{padding:9px 6px}

.unlock-box{border:1px solid #cee3e2;background:#f3f9f8;padding:18px;border-radius:10px}.unlock-box h3{margin:0}.unlock-box [hidden]{display:none!important}#unlock-text-wrap{display:flex;align-items:end;gap:12px;margin-top:15px}#unlock-text-wrap label{flex:1}.pattern-board{position:relative;width:280px;max-width:100%;aspect-ratio:1;background:white;border:1px solid #c3dcda;border-radius:14px;touch-action:none;user-select:none;margin:15px auto;color:#1b9387}.pattern-board svg{position:absolute;width:100%;height:100%;pointer-events:none}.pattern-dot{position:absolute;transform:translate(-50%,-50%);padding:0;width:40px;height:40px;border-radius:50%;background:white;border:2px solid #698e96;color:#355d67;touch-action:none;user-select:none}.pattern-dot.selected{background:#117d7d;border-color:#117d7d;color:white}.pattern-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.pattern-actions span{font-size:12px;color:#3f686f}
