/* ======================================================
   ACCESO RÁPIDO POR HUELLA (solo responsive)
   Usa las variables de los temas de HADES.
   ====================================================== */
.fp-button{
    width:104px;height:104px;border-radius:50%;margin:6px auto 16px;
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    color:var(--primary-color,#2557D6);
    background:color-mix(in srgb,var(--primary-color,#2557D6) 12%,var(--bg-card,#fff));
    border:2px solid color-mix(in srgb,var(--primary-color,#2557D6) 45%,transparent);
    touch-action:manipulation;-webkit-tap-highlight-color:transparent;
    transition:transform .12s ease,box-shadow .2s ease,opacity .2s ease;
    animation:fpPulse 2.6s ease-out infinite;
}
.fp-button:active{transform:scale(.93);}
.fp-button:disabled{opacity:.65;cursor:default;}
.fp-button.is-scanning{animation:fpScan 1s ease-in-out infinite;}
.fp-attempts{display:flex;justify-content:center;gap:8px;margin:0 0 10px;}
.fp-attempts span{
    width:24px;height:4px;border-radius:99px;
    background:color-mix(in srgb,var(--text-secondary,#3F4C63) 25%,transparent);
    transition:background .2s ease;
}
.fp-attempts span.used{background:var(--accent-color,#D9480F);}

/* ---- Hoja para elegir huella o PIN ---- */
.qc-options{display:grid;gap:10px;margin:8px 0 4px;}
.qc-option{
    display:flex;gap:12px;align-items:center;text-align:left;width:100%;padding:14px;
    border-radius:14px;font:inherit;cursor:pointer;
    color:var(--hx-text,var(--text-primary,#1B2537));
    background:color-mix(in srgb,var(--primary-color,#2557D6) 5%,transparent);
    border:1px solid var(--hx-line,color-mix(in srgb,var(--text-secondary,#3F4C63) 22%,transparent));
    touch-action:manipulation;-webkit-tap-highlight-color:transparent;
    transition:border-color .15s ease,transform .1s ease,background .15s ease;
}
.qc-option:hover:not(:disabled){border-color:var(--primary-color,#2557D6);}
.qc-option:active:not(:disabled){transform:scale(.985);}
.qc-option:disabled{opacity:.6;cursor:not-allowed;}
.qc-option[hidden]{display:none;}
.qc-ico{font-size:28px;line-height:1;flex:0 0 auto;}
.qc-text{display:block;min-width:0;}
.qc-text strong{display:block;font-size:15px;margin-bottom:2px;}
.qc-text small{display:block;font-size:12.5px;line-height:1.4;color:var(--hx-muted,var(--text-secondary,#3F4C63));}

@media (min-width:769px){
    #fpLoginPanel,#quickChoiceModal{display:none !important;}
}
@keyframes fpPulse{
    0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary-color,#2557D6) 35%,transparent);}
    70%,100%{box-shadow:0 0 0 18px transparent;}
}
@keyframes fpScan{
    0%,100%{transform:scale(1);}
    50%{transform:scale(1.06);}
}
@media (prefers-reduced-motion:reduce){
    .fp-button,.fp-button.is-scanning{animation:none;}
}
