/* Pestañas tipo carpeta + carnet vertical CALEP. Complementa crm.css. */
.spectab-panel{display:none}
.spectab-panel.on{display:block}
.spectab-panel>h4.mh:first-child{border-top:none;margin-top:6px;padding-top:0}
#spec-overlay .modal{background:transparent;border:none;box-shadow:none;padding:0;overflow:visible;max-height:none;width:660px}
#spec-overlay .spectabs{display:flex;flex-wrap:nowrap;gap:2px;padding:0 14px;margin:0;border:none;position:relative;z-index:2;align-items:flex-end;justify-content:flex-start}
#spec-overlay .spectabs button{flex:0 0 118px;width:118px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--panel2);color:var(--muted);border:1px solid var(--line);border-radius:10px 10px 0 0;padding:0 6px;font-size:12.5px;font-weight:600;line-height:1.2;cursor:pointer;text-align:center;white-space:normal;margin-bottom:-1px;box-shadow:0 -2px 7px rgba(0,0,0,.10)}
#spec-overlay .spectabs button:hover{color:var(--txt)}
#spec-overlay .spectabs button.on{background:var(--panel);color:var(--txt);border-bottom-color:var(--panel)}
#spec-overlay .spec-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px 26px;box-shadow:0 30px 80px rgba(0,0,0,.55);max-height:calc(92vh - 58px);overflow-y:auto}
#spec-overlay .spec-x{position:absolute;top:14px;right:16px;background:none;border:none;color:var(--muted);font-size:22px;line-height:1;cursor:pointer;padding:2px 6px;z-index:4}
#spec-overlay .spec-x:hover{color:var(--txt)}
@media(max-width:700px){#spec-overlay .modal{width:100%!important}#spec-overlay .spectabs{gap:2px;padding:0 6px;justify-content:stretch}#spec-overlay .spectabs button{flex:1 1 0;width:auto;min-width:0;height:50px;font-size:10.5px;padding:4px 3px;border-radius:8px 8px 0 0}#spec-overlay .spec-card{padding:18px}#spec-overlay .kv{grid-template-columns:1fr 1fr}}

/* ===== Carnet vertical CALEP ===== */
.vcarnet{position:relative;width:330px;max-width:100%;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#111a2c 0%,#0c1424 45%,#0a1120 100%);box-shadow:0 24px 60px rgba(0,0,0,.5);border:1px solid #22314c;color:#eef2f8;margin:0 auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.vcarnet .vc-bg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.vcarnet .vc-in{position:relative;z-index:2;padding:22px 22px 16px;display:flex;flex-direction:column;align-items:center;text-align:center}
.vcarnet .vc-logo{height:44px;margin:2px 0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.vcarnet .vc-emp{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#caa964;font-weight:700;margin:6px 0 14px}
.vcarnet .vc-ring{width:128px;height:128px;border-radius:50%;padding:4px;background:linear-gradient(145deg,#d8be82,#b9893a);box-shadow:0 6px 18px rgba(0,0,0,.5)}
.vcarnet .vc-photo{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#33415c;display:block}
.vcarnet .vc-name{font-size:19px;font-weight:800;margin:15px 0 2px;letter-spacing:.3px;line-height:1.15}
.vcarnet .vc-cargo{font-size:11.5px;letter-spacing:1.4px;text-transform:uppercase;color:#caa964;font-weight:700}
.vcarnet .vc-ced{font-size:13.5px;color:#dfe6f0;margin-top:6px;font-weight:600}
.vcarnet .vc-pills{display:flex;gap:8px;margin:15px 0 2px;width:100%;justify-content:center}
.vcarnet .vc-pill{flex:1;max-width:96px;background:rgba(255,255,255,.04);border:1px solid #2c3a55;border-radius:10px;padding:7px 4px}
.vcarnet .vc-pill i{display:block;font-style:normal;font-size:9px;letter-spacing:1px;color:#8b97a8;text-transform:uppercase;margin-bottom:2px}
.vcarnet .vc-pill b{font-size:12.5px;color:#f2f5fa}
.vcarnet .vc-pill.rh b{color:#f6c760}
.vcarnet .vc-pill-falta b{color:#fca5a5}
.vcarnet .vc-falta{color:#fca5a5}
.vcarnet .vc-qr{display:flex;align-items:center;gap:12px;margin-top:15px;width:100%;background:rgba(255,255,255,.03);border:1px solid #24314a;border-radius:12px;padding:10px}
.vcarnet .vc-qr-box{width:84px;height:84px;border-radius:8px;background:#fff;flex:0 0 84px;display:flex;align-items:center;justify-content:center;color:#0a0d15;font-size:9px;overflow:hidden}
.vcarnet .vc-qr-box svg{width:100%;height:100%;display:block}
.vcarnet .vc-qr>span{font-size:10px;color:#9aa6b6;text-align:left;line-height:1.35}
.vcarnet .vc-qr a{color:#caa964}
.vcarnet .vc-foot{font-size:9px;color:#6b7789;margin-top:14px;line-height:1.4;border-top:1px solid #1c2740;padding-top:10px}
@media print{
  #carnet-hoja{height:auto!important}
  .vcarnet{width:64mm!important;box-shadow:none!important;margin:0 auto!important}
}
