.guf-form{width:100%;max-width:none;margin:0;box-sizing:border-box}.guf-form *{box-sizing:border-box}.guf-field{width:100%;margin-bottom:16px}.guf-label{display:block;font-weight:600;margin-bottom:6px}.guf-field input[type=text],.guf-field input[type=email],.guf-field input[type=password],.guf-field input[type=number],.guf-field input[type=tel],.guf-field input[type=url],.guf-field input[type=date],.guf-field select,.guf-field textarea{width:100%;max-width:100%;box-sizing:border-box}.guf-button{cursor:pointer;box-sizing:border-box}.guf-message{width:100%;box-sizing:border-box;padding:12px 14px;margin:0 0 16px;border-radius:8px}.guf-message-error{background:#ffecec;border:1px solid #f5b5b5}.guf-message-success{background:#ecfff0;border:1px solid #a9dfb3}.guf-message-info{background:#eef6ff;border:1px solid #b6d6f5}.guf-error{color:#b32d2e;font-size:13px;margin-top:5px}.guf-required{color:#b32d2e}.guf-options{width:100%;display:flex;flex-direction:column;gap:8px}.guf-option,.guf-check-label,.guf-remember{display:flex;align-items:center;gap:8px}.guf-login-links{width:100%;margin-top:12px}.guf-logout-link{display:inline-block}.guf-field[hidden]{display:none!important}

/* v2.5 - secciones dentro de formularios */
.guf-section{width:100%;margin:18px 0 10px}.guf-section-title{margin:0 0 6px;font-size:1.15em;line-height:1.25}.guf-section-description{margin:0;color:inherit;opacity:.78}.guf-separator{width:100%;border:0;border-top:1px solid currentColor;opacity:.18;margin:18px 0}.guf-form{width:100%;max-width:100%;box-sizing:border-box}.guf-form *{box-sizing:border-box}.guf-field input,.guf-field select,.guf-field textarea{width:100%;max-width:100%}

.guf-help {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.4;
    opacity: 0.8;
}

/* v2.12 - mensajes simples arriba del botón */
.guf-submit-message{margin:12px 0 8px;padding:0;background:transparent;border:0;border-radius:0;font-size:14px;line-height:1.45}
.guf-submit-message-error{color:#d63638}
.guf-submit-message-success{color:#008a20}
.guf-error{padding:0;background:transparent;border:0;color:#d63638}

/* v2.14 - selectores con búsqueda dentro del desplegable */
.guf-select-ui{width:100%;position:relative;box-sizing:border-box}
.guf-native-select-hidden{position:absolute!important;left:0;top:0;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.guf-select-ui-button{width:100%;min-height:42px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid currentColor;border-radius:8px;background:#fff;color:inherit;cursor:pointer;box-sizing:border-box}
.guf-select-ui-button:after{content:'⌄';font-size:13px;opacity:.75}
.guf-select-ui-menu{display:none;position:absolute;z-index:9999;top:calc(100% + 6px);left:0;right:0;background:#fff;color:#111;border:1px solid rgba(0,0,0,.18);border-radius:10px;box-shadow:0 14px 35px rgba(0,0,0,.16);padding:8px;box-sizing:border-box}
.guf-select-ui.is-open .guf-select-ui-menu{display:block}
.guf-select-ui-search{width:100%!important;min-height:38px;margin:0 0 8px!important;padding:8px 10px!important;border:1px solid rgba(0,0,0,.18)!important;border-radius:8px!important;box-sizing:border-box!important}
.guf-select-ui-list{max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:2px}
.guf-select-ui-option{width:100%;text-align:left;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:inherit;cursor:pointer}
.guf-select-ui-option:hover,.guf-select-ui-option.is-selected{background:rgba(0,0,0,.07)}
.guf-select-ui-empty{padding:10px;color:#666;font-size:13px}

/* v2.20 - botón secundario login/registro */
.guf-auth-switch{width:100%;margin-top:10px}.guf-auth-switch .guf-button,.guf-button-secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.guf-auth-switch .guf-button-secondary{width:100%;padding:10px 14px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit}

/* v2.23 - subbotones genéricos */
.guf-auth-extra-links{width:100%;margin-top:10px;display:flex;flex-direction:column;gap:8px}
.guf-auth-extra-links .guf-button-secondary{width:100%;padding:10px 14px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}


/* v2.26 - acciones del login debajo del botón principal */
.guf-login-actions-below{width:100%;margin-top:10px;display:flex;flex-direction:column;gap:10px;align-items:stretch}
.guf-login-actions-below .guf-remember{width:100%;margin:0;display:flex;align-items:center;gap:8px}
.guf-login-actions-below .guf-login-links,.guf-login-actions-below .guf-auth-switch,.guf-login-actions-below .guf-auth-extra-links{margin-top:0}
.guf-forgot-password-link a{display:inline-block;color:inherit;text-decoration:none}
.guf-forgot-password-link a:hover{text-decoration:underline}

/* v2.28 - recordarme visible con checkbox visual propio */
.guf-login-actions-below .guf-remember-wrapper{width:100%;display:block;margin:0;padding:0}
.guf-login-actions-below .guf-remember{width:100%;margin:0;padding:0;display:flex!important;align-items:center;gap:8px;line-height:1.4;cursor:pointer;text-align:left;color:inherit}
.guf-login-actions-below .guf-remember input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;display:inline-block!important;visibility:visible!important;opacity:1!important;position:static!important;width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;margin:0!important;padding:0!important;flex:0 0 16px!important;pointer-events:auto!important}
.guf-login-actions-below .guf-remember span{display:inline!important;color:inherit}


/* v2.28 - fallback visual para temas que ocultan checkbox nativo */
.guf-login-form .guf-login-actions-below .guf-remember-wrapper{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important}
.guf-login-form .guf-login-actions-below .guf-remember{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:100%!important;min-height:20px!important;color:inherit!important;font-family:inherit!important;font-size:inherit!important}
.guf-login-form .guf-login-actions-below .guf-remember input[type=checkbox]{display:inline-block!important;visibility:visible!important;opacity:1!important;position:static!important;left:auto!important;top:auto!important;width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;min-height:16px!important;max-height:16px!important;margin:0!important;padding:0!important;appearance:auto!important;-webkit-appearance:checkbox!important;clip:auto!important;clip-path:none!important;transform:none!important;z-index:1!important}
.guf-login-form .guf-login-actions-below .guf-remember-checkbox-visual{display:inline-block!important;width:16px!important;height:16px!important;min-width:16px!important;border:1px solid currentColor!important;border-radius:3px!important;background:transparent!important;box-sizing:border-box!important;position:relative!important;margin-left:-24px!important;pointer-events:none!important;opacity:.95!important}
.guf-login-form .guf-login-actions-below .guf-remember input[type=checkbox]:checked + .guf-remember-checkbox-visual::after{content:"✓";position:absolute;left:2px;top:-4px;font-size:18px;line-height:16px;font-weight:700;color:inherit}
.guf-login-form .guf-login-actions-below .guf-remember-text{display:inline!important;visibility:visible!important;opacity:1!important;color:inherit!important;line-height:1.4!important}

/* v2.30 - módulos de auth arriba/abajo del botón */
.guf-auth-modules{width:100%;display:flex;flex-direction:column;gap:10px;align-items:stretch}
.guf-auth-modules-above{margin:10px 0 10px}
.guf-auth-modules-below{margin:10px 0 0}
.guf-auth-module{width:100%}
