/*
 * Smartweb Captcha: diskretny stavovy riadok namiesto ramceka s checkboxom.
 * Widget ALTCHA 1.5.1 renderuje do bezneho DOM (.altcha[data-state] > .altcha-main > .altcha-checkbox + .altcha-label),
 * stav prepina atribut data-state (unverified | verifying | verified | error | expired). Ikony su externe SVG (mask).
 */
.smartweb-captcha{margin:0 0 14px}
body.login .smartweb-captcha{margin:-6px 0 16px}

.smartweb-captcha .altcha{border:0;background:transparent;max-width:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:13px;line-height:18px;color:rgba(8,8,16,.56)}
.smartweb-captcha .altcha:focus-within{border:0}
.smartweb-captcha .altcha-main{padding:0;gap:0;min-height:20px}
.smartweb-captcha .altcha-main > svg{display:none}
.smartweb-captcha .altcha-logo,.smartweb-captcha .altcha-footer{display:none}

/* Checkbox ostava v DOM (widget don nastavuje vysledok), ale je neviditelny. */
.smartweb-captcha .altcha-checkbox{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);opacity:0;pointer-events:none}

.smartweb-captcha .altcha-label{display:flex;align-items:center;gap:8px}
/* V neoverenom stave je text <label>; temy a login CSS mu davaju margin/display s vyssou specificitou, preto !important. */
.smartweb-captcha .altcha-label label{display:inline!important;margin:0!important;padding:0!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;color:inherit!important;cursor:default}
.smartweb-captcha .altcha-label::before{content:"";width:16px;height:16px;flex:0 0 16px;background-color:currentColor;-webkit-mask:url(../img/shield.svg) center/16px 16px no-repeat;mask:url(../img/shield.svg) center/16px 16px no-repeat}

.smartweb-captcha .altcha[data-state="verifying"] .altcha-label::before{-webkit-mask:none;mask:none;background:none;box-sizing:border-box;border:1.5px solid rgba(8,8,16,.2);border-top-color:rgba(8,8,16,.7);border-radius:50%;animation:smartweb-captcha-spin .8s linear infinite}

.smartweb-captcha .altcha[data-state="verified"] .altcha-label::before{-webkit-mask-image:url(../img/shield-check.svg);mask-image:url(../img/shield-check.svg);background-color:#1a7f37}

/* Expiracia vyzera ako neoverene (pri odoslani sa overi znova). Chyba: riadok s vykricnikom a textom chyby. */
.smartweb-captcha .altcha[data-state="expired"] .altcha-error{display:none}
.smartweb-captcha .altcha[data-state="error"] .altcha-main{display:none}
.smartweb-captcha .altcha-error{display:flex;align-items:center;gap:8px;padding:0;font-size:13px;line-height:18px;color:#d63638}
.smartweb-captcha .altcha-error svg{display:none}
.smartweb-captcha .altcha-error::before{content:"";width:16px;height:16px;flex:0 0 16px;background-color:currentColor;-webkit-mask:url(../img/alert-circle.svg) center/16px 16px no-repeat;mask:url(../img/alert-circle.svg) center/16px 16px no-repeat}

@keyframes smartweb-captcha-spin{to{transform:rotate(360deg)}}
