/* WolfieAuth Login — in-place sign-in modal + account widget.
 * Dark "glass" dialog. Scoped under .wolfieauth-modal so theme styles do not
 * bleed in; the few !important rules exist because themes (Kadence and
 * friends) restyle input[type=text] with white backgrounds and fixed heights. */

.wolfieauth-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;background:rgba(5,8,18,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .25s;padding:16px;box-sizing:border-box}
.wolfieauth-modal.on{opacity:1;pointer-events:auto}
.wolfieauth-modal *,.wolfieauth-modal *::before,.wolfieauth-modal *::after{box-sizing:border-box}
.wolfieauth-modal .wal-card{position:relative;width:min(420px,100%);max-height:100%;overflow:auto;background:linear-gradient(160deg,rgba(14,22,44,.98),rgba(7,10,20,.98));border:1px solid rgba(53,224,255,.35);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.6),0 0 0 1px rgba(53,224,255,.08) inset;color:#f2f5ff;font:14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;padding:22px 22px 18px;transform:translateY(12px) scale(.97);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.wolfieauth-modal.on .wal-card{transform:none}
.wolfieauth-modal .wal-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.wolfieauth-modal .wal-head b{font-size:17px;flex:1;color:#f2f5ff}
.wolfieauth-modal .wal-card .wal-x{background:none!important;background-image:none!important;border:0!important;color:#9fe9ff!important;font-size:22px;cursor:pointer;line-height:1;padding:2px 6px!important;box-shadow:none!important}
.wolfieauth-modal .wal-tabs{display:flex;gap:6px;margin-bottom:14px}
.wolfieauth-modal .wal-card .wal-tabs button{flex:1;background:rgba(53,224,255,.08)!important;background-image:none!important;border:1px solid rgba(53,224,255,.3)!important;color:#e8fbff!important;padding:8px!important;border-radius:10px!important;cursor:pointer;font:inherit!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}
.wolfieauth-modal .wal-card .wal-tabs button.on{background:linear-gradient(90deg,#35e0ff,#8a7bff)!important;background-image:linear-gradient(90deg,#35e0ff,#8a7bff)!important;color:#06101c!important;font-weight:700;border-color:transparent!important}
.wolfieauth-modal label{display:block;font-size:12px;color:#9fe9ff;margin:8px 0 4px;font-weight:500}
.wolfieauth-modal input[type=text],.wolfieauth-modal input[type=email],.wolfieauth-modal input[type=password]{width:100%!important;min-height:0!important;height:auto!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(53,224,255,.3)!important;color:#f2f5ff!important;padding:10px 12px!important;border-radius:10px!important;font:inherit!important;outline:none;box-shadow:none!important;margin:0!important}
.wolfieauth-modal input:focus{border-color:#35e0ff!important;box-shadow:0 0 0 3px rgba(53,224,255,.18)!important}
.wolfieauth-modal input::placeholder{color:#7fb9c9}
.wolfieauth-modal .wal-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;font-size:12px;color:#9fe9ff}
.wolfieauth-modal .wal-row label{margin:0;display:flex;align-items:center;gap:6px;font-size:12px}
.wolfieauth-modal .wal-row input[type=checkbox]{margin:0;accent-color:#35e0ff}
.wolfieauth-modal .wal-row a{color:#35e0ff;text-decoration:none}
.wolfieauth-modal .wal-row a:hover{text-decoration:underline}
.wolfieauth-modal .wal-hp{position:absolute!important;left:-9999px!important;opacity:0;height:0!important;width:0!important;padding:0!important;border:0!important}
.wolfieauth-modal .wal-card .wal-btn{width:100%;margin-top:14px;background:linear-gradient(90deg,#35e0ff,#8a7bff)!important;background-image:linear-gradient(90deg,#35e0ff,#8a7bff)!important;color:#06101c!important;font-weight:700;border:0!important;border-radius:12px!important;padding:11px!important;font:inherit!important;font-size:15px!important;cursor:pointer;box-shadow:none!important;text-transform:none!important}
.wolfieauth-modal .wal-btn[disabled]{opacity:.6;cursor:wait}
.wolfieauth-modal .wal-or{display:flex;align-items:center;gap:10px;margin:14px 0 4px;color:#7fb9c9;font-size:12px}
.wolfieauth-modal .wal-or::before,.wolfieauth-modal .wal-or::after{content:"";flex:1;height:1px;background:rgba(53,224,255,.2)}
.wolfieauth-modal .wal-card .wal-oidc{width:100%;margin-top:10px;background:rgba(53,224,255,.1)!important;background-image:none!important;border:1px solid rgba(53,224,255,.4)!important;color:#e8fbff!important;border-radius:12px!important;padding:10px!important;font:inherit!important;cursor:pointer;box-shadow:none!important;text-transform:none!important;display:flex;align-items:center;justify-content:center;gap:8px}
.wolfieauth-modal .wal-card .wal-oidc:hover{background:rgba(53,224,255,.2)!important}
.wolfieauth-modal .wal-card .wal-oidc.wal-g{background:#fff!important;background-image:none!important;color:#1f1f1f!important;border-color:#dadce0!important;font-weight:600}
.wolfieauth-modal .wal-card .wal-oidc.wal-g:hover{background:#f3f4f6!important}
.wolfieauth-modal .wal-oidc svg{flex:none}
.wolfieauth-modal .wal-gsi{display:flex;justify-content:center;margin-top:12px;min-height:44px}
.wolfieauth-modal .wal-wait{display:none;margin-top:12px;padding:10px 12px;border-radius:10px;background:rgba(53,224,255,.08);border:1px solid rgba(53,224,255,.3);color:#9fe9ff;font-size:13px;text-align:center}
.wolfieauth-modal .wal-wait.on{display:block}
.wolfieauth-modal .wal-wait a{color:#35e0ff;cursor:pointer;text-decoration:underline}
.wolfieauth-modal .wal-err{display:none;margin-top:10px;padding:8px 10px;border-radius:10px;background:rgba(255,63,216,.12);border:1px solid rgba(255,63,216,.4);color:#ffd6f6;font-size:13px}
.wolfieauth-modal .wal-err.on{display:block}
.wolfieauth-modal .wal-note{margin-top:12px;font-size:12px;color:#7fb9c9;text-align:center}
.wolfieauth-modal [hidden]{display:none!important}

/* Small toast after in-place login / logout. */
.wolfieauth-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);z-index:2147483001;background:linear-gradient(160deg,rgba(14,22,44,.98),rgba(7,10,20,.98));border:1px solid rgba(53,224,255,.4);color:#e8fbff;font:14px/1.4 system-ui,sans-serif;padding:10px 16px;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.5);opacity:0;transition:opacity .25s,transform .25s;pointer-events:none;max-width:min(92vw,480px)}
.wolfieauth-toast.on{opacity:1;transform:translate(-50%,0)}

/* [wolfieauth_account] widget. Intentionally minimal — inherits the theme's colours. */
.wolfieauth-account{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}
.wolfieauth-account .wolfieauth-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}
.wolfieauth-account .wolfieauth-badge{font-size:11px;padding:2px 6px;border-radius:999px;background:rgba(53,224,255,.15);color:inherit;opacity:.85}
.wolfieauth-account .wolfieauth-logout,.wolfieauth-account .wolfieauth-login-link{cursor:pointer}
.wolfieauth-guest-only[hidden]{display:none!important}
