/*
 * BEGUIGO Theme v0.7.0 — authentication + onboarding presentation layer.
 * Authentication, account creation, password-reset security and welcome-flow
 * progression remain owned by WooCommerce / nan-challenges / welcome-flow.
 */
body.beguigo-auth-page,
body.beguigo-onboarding-page{--entry-shell:min(1180px,calc(100% - 48px));background:var(--beguigo-theme-bg);color:var(--beguigo-theme-text)}
body.beguigo-auth-page .beguigo-main,
body.beguigo-onboarding-page .beguigo-main{overflow:hidden}
body.beguigo-auth-page .beguigo-content,
body.beguigo-onboarding-page .beguigo-content{width:100%;max-width:none;padding:0}
body.beguigo-auth-page .beguigo-article,
body.beguigo-onboarding-page .beguigo-article{max-width:none}

/* Login + registration landing pages: preserve plugin content, normalize design. */
body.beguigo-auth-page :where(.bl-page,.br-page){background:var(--beguigo-theme-bg);color:var(--beguigo-theme-text);font-family:var(--beguigo-theme-sans);overflow:clip}
body.beguigo-auth-page :where(.bl-inner,.bl-hero-inner,.br-inner,.br-hero-inner){width:var(--entry-shell)!important;max-width:none!important;margin-inline:auto!important}
body.beguigo-auth-page :where(.bl-section,.br-section){scroll-margin-top:112px}
body.beguigo-auth-page :where(.bl-eyebrow,.br-eyebrow){color:var(--beguigo-theme-gold)!important;font-size:.76rem!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.beguigo-auth-page :where(.bl-hero-title,.br-hero-title,.bl-title,.br-title){font-family:var(--beguigo-theme-display)!important;letter-spacing:-.045em!important;text-wrap:balance}
body.beguigo-auth-page :where(.bl-hero-text,.br-hero-text,.bl-subtitle,.br-subtitle){color:var(--beguigo-theme-muted)!important;text-wrap:pretty}
body.beguigo-auth-page :where(.bl-gradient,.br-gradient){background:linear-gradient(100deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong) 42%,#b89cff 88%);-webkit-background-clip:text;background-clip:text;color:transparent!important}
body.beguigo-auth-page :where(.bl-button,.br-button){display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;padding:12px 19px!important;border:1px solid transparent!important;border-radius:13px!important;background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;color:#fff!important;font-weight:900!important;line-height:1.15!important;text-decoration:none!important;box-shadow:0 12px 30px rgba(221,37,45,.18)!important;transition:transform .18s ease,filter .18s ease,border-color .18s ease,background .18s ease}
body.beguigo-auth-page :where(.bl-button,.br-button):hover{transform:translateY(-2px);filter:brightness(1.05)}
body.beguigo-auth-page :where(.bl-button-outline,.br-button-outline){background:rgba(255,255,255,.025)!important;color:#f5f7fb!important;border-color:var(--beguigo-theme-line)!important;box-shadow:none!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card,.bl-card,.br-card,.br-panel){border:1px solid var(--beguigo-theme-line-soft)!important;border-radius:var(--beguigo-theme-radius)!important;background:linear-gradient(180deg,rgba(24,34,52,.97),rgba(13,21,35,.97))!important;box-shadow:0 22px 70px rgba(0,0,0,.22)!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card){padding:clamp(22px,3vw,34px)!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) h2{margin-top:0;color:#fff!important;letter-spacing:-.03em}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) form{margin:20px 0 0!important;padding:0!important;border:0!important;background:transparent!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) .form-row{margin:0 0 15px!important;padding:0!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) label{display:block;color:#dce3ed!important;font-weight:800!important;margin-bottom:6px}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input.input-text,
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input[type=text],
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input[type=email],
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input[type=password]{width:100%!important;min-height:48px!important;padding:11px 13px!important;border:1px solid #2a3850!important;border-radius:11px!important;background:#0b1424!important;color:#fff!important;box-shadow:none!important;font:inherit!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input:focus{outline:2px solid rgba(241,91,93,.18)!important;outline-offset:1px;border-color:rgba(241,91,93,.72)!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) button.button,
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) input.button{width:100%;min-height:48px;padding:12px 18px!important;border:0!important;border-radius:12px!important;background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;color:#fff!important;font-weight:900!important;box-shadow:0 10px 24px rgba(221,37,45,.16)!important}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) .woocommerce-form__label-for-checkbox{display:flex!important;align-items:center;gap:8px;color:#b8c2d1!important;font-size:.88rem}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) .lost_password{margin-top:12px}
body.beguigo-auth-page :where(.bl-login-card,.br-form-card) a{color:#d9cdfd}
body.beguigo-auth-page :where(.bl-login-links,.br-login-note){display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px;color:#aab5c5;font-size:.88rem}
body.beguigo-auth-page :where(.bl-secure-note,.br-secure-note){padding-top:14px;border-top:1px solid var(--beguigo-theme-line-soft);color:#8895a8!important;font-size:.78rem!important}
body.beguigo-auth-page :where(.bl-trust,.br-trust){color:#bcc6d5!important}
body.beguigo-auth-page :where(.bl-card,.br-card){transition:transform .18s ease,border-color .18s ease}
body.beguigo-auth-page :where(.bl-card,.br-card):hover{transform:translateY(-2px);border-color:rgba(241,91,93,.27)!important}
body.beguigo-auth-page :where(.woocommerce-error,.woocommerce-info,.woocommerce-message){border-radius:13px!important;background:#0d1626!important;color:#eef2f7!important;border:1px solid var(--beguigo-theme-line)!important}

/* Password recovery/reset remains WooCommerce-native but gets an account-entry composition. */
body.beguigo-auth-lost-password .beguigo-content,
body.beguigo-auth-reset-password .beguigo-content{width:min(760px,calc(100% - 32px));padding:64px 0 82px}
body.beguigo-auth-lost-password .woocommerce,
body.beguigo-auth-reset-password .woocommerce{padding:clamp(22px,4vw,38px);border:1px solid var(--beguigo-theme-line);border-radius:22px;background:linear-gradient(180deg,#111a2b,#0b1321);box-shadow:var(--beguigo-theme-shadow)}
body.beguigo-auth-lost-password .woocommerce>p:first-child,
body.beguigo-auth-reset-password .woocommerce>p:first-child{margin-top:0;color:#c0cad8}
body.beguigo-auth-lost-password .woocommerce-form-row,
body.beguigo-auth-reset-password .woocommerce-form-row{float:none!important;width:100%!important}
body.beguigo-auth-lost-password .woocommerce input.input-text,
body.beguigo-auth-reset-password .woocommerce input.input-text{width:100%!important}
body.beguigo-auth-lost-password .woocommerce button.button,
body.beguigo-auth-reset-password .woocommerce button.button{min-height:48px;background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;color:#fff!important}

/* Onboarding templates: one visual language, no progression/business overrides. */
body.beguigo-onboarding-page :where(.beguigo-onboarding,.luo-page,.bgcredits,.bgvip-pro,.sq-page,.bq-page,.bf-page,.bg-sim){background:var(--beguigo-theme-bg)!important;color:var(--beguigo-theme-text)!important;font-family:var(--beguigo-theme-sans)!important;overflow:clip}
body.beguigo-onboarding-page :where(.luo-inner,.luo-hero-inner,.bgcredits-wrap,.bgvip-wrap,.sq-inner,.sq-hero-inner,.bq-inner,.bq-hero-inner,.bf-inner,.bf-hero-inner,.bg-wrap){width:var(--entry-shell)!important;max-width:none!important;margin-inline:auto!important}
body.beguigo-onboarding-page :where(.luo-eyebrow,.bgcredits-eyebrow,.bgvip-eyebrow,.sq-eyebrow,.bq-eyebrow,.bf-eyebrow,.bg-eyebrow,.bo-eyebrow){color:var(--beguigo-theme-gold)!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.beguigo-onboarding-page :where(.luo-hero-title,.luo-title,.bgcredits-head h2,.bgvip-head h2,.sq-hero-title,.sq-title,.bq-hero-title,.bq-title,.bf-hero-title,.bf-title,.bg-title,.bo-header h1,.bo-header h2){font-family:var(--beguigo-theme-display)!important;letter-spacing:-.045em!important;text-wrap:balance}
body.beguigo-onboarding-page :where(.luo-gradient,.sq-gradient,.bq-gradient,.bf-gradient){background:linear-gradient(100deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong) 42%,#b89cff 88%);-webkit-background-clip:text;background-clip:text;color:transparent!important}
body.beguigo-onboarding-page :where(.luo-button,.bgcredits-btn,.bgvip-btn,.sq-button,.bq-button,.bf-button,.bg-btn){border-radius:13px!important;font-weight:900!important;text-decoration:none!important;transition:transform .18s ease,filter .18s ease,border-color .18s ease!important}
body.beguigo-onboarding-page :where(.luo-button,.bgcredits-btn:not(.bgcredits-ghost),.bgvip-btn:not(.bgvip-ghost),.sq-button:not(.sq-button-outline),.bq-button:not(.bq-button-outline),.bf-button:not(.bf-button-outline),.bg-btn:not(.bg-ghost)){background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 12px 30px rgba(221,37,45,.18)!important}
body.beguigo-onboarding-page :where(.bgcredits-ghost,.bgvip-ghost,.sq-button-outline,.bq-button-outline,.bf-button-outline,.bg-ghost){background:rgba(255,255,255,.025)!important;color:#f5f7fb!important;border-color:var(--beguigo-theme-line)!important;box-shadow:none!important}
body.beguigo-onboarding-page :where(.luo-button,.bgcredits-btn,.bgvip-btn,.sq-button,.bq-button,.bf-button,.bg-btn):hover{transform:translateY(-2px);filter:brightness(1.05)}

/* Welcome-flow navigator: canonical progress/action treatment. */
body.beguigo-onboarding-page .beguigo-welcome-flow-nav{width:var(--entry-shell);margin:26px auto 42px!important;padding:18px 20px!important;border:1px solid var(--beguigo-theme-line)!important;border-radius:17px!important;background:linear-gradient(180deg,#111a2b,#0b1321)!important;color:#e8edf4!important;box-shadow:0 16px 48px rgba(0,0,0,.18)!important}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress{gap:18px!important;margin-bottom:15px!important}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress span{color:#dce3ed;font-weight:850;font-size:.84rem;white-space:nowrap}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress progress{height:9px;border:0;border-radius:999px;overflow:hidden;background:#202d42;color:var(--beguigo-theme-accent)}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress progress::-webkit-progress-bar{background:#202d42;border-radius:999px}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress progress::-webkit-progress-value{background:linear-gradient(90deg,var(--beguigo-theme-accent),#7b62d9);border-radius:999px}
body.beguigo-onboarding-page .beguigo-welcome-flow-progress progress::-moz-progress-bar{background:linear-gradient(90deg,var(--beguigo-theme-accent),#7b62d9);border-radius:999px}
body.beguigo-onboarding-page .beguigo-welcome-flow-actions{gap:10px!important}
body.beguigo-onboarding-page .beguigo-welcome-flow-button{min-height:42px;padding:10px 16px!important;border:1px solid transparent!important;border-radius:11px!important;background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;color:#fff!important;font-weight:850!important;text-decoration:none!important;box-shadow:0 8px 22px rgba(221,37,45,.14)!important}
body.beguigo-onboarding-page .beguigo-welcome-flow-button-secondary{background:transparent!important;border-color:var(--beguigo-theme-line)!important;color:#e7ebf2!important;box-shadow:none!important}

/* Existing welcome overview/progress component. Theme styles only; plugin state remains authoritative. */
body.beguigo-onboarding-page .beguigo-onboarding{width:var(--entry-shell);margin-inline:auto;padding:clamp(28px,5vw,64px) 0}
body.beguigo-onboarding-page :where(.bo-header,.bo-progress-wrap,.bo-step){border-color:var(--beguigo-theme-line-soft)!important}
body.beguigo-onboarding-page .bo-progress-track{background:#202d42!important}
body.beguigo-onboarding-page .bo-progress-fill{background:linear-gradient(90deg,var(--beguigo-theme-accent),#7b62d9)!important}
body.beguigo-onboarding-page .bo-step{background:#101827!important;color:#c2ccda!important}
body.beguigo-onboarding-page .bo-step.is-active{border-color:rgba(241,91,93,.52)!important;box-shadow:0 12px 34px rgba(221,37,45,.12)!important}
body.beguigo-onboarding-page .bo-step.is-complete{border-color:rgba(46,199,154,.34)!important}

/* Native WordPress login fallback. */
body.login{background:radial-gradient(circle at 20% 0%,rgba(123,98,217,.15),transparent 32%),radial-gradient(circle at 80% 0%,rgba(241,91,93,.12),transparent 30%),#070b14;color:#f8f7f4;font-family:var(--beguigo-theme-sans)}
body.login #login{width:min(420px,calc(100% - 32px));padding-top:8vh}
body.login h1 a{width:auto;height:58px;background:none!important;color:#fff;text-indent:0;font-size:0;text-decoration:none}
body.login h1 a::after{content:"BEGUIGO";display:block;font-size:30px;font-weight:950;font-style:italic;letter-spacing:-.05em;color:#fff}
body.login form{padding:26px;border:1px solid #273449;border-radius:18px;background:#101827;box-shadow:0 22px 70px rgba(0,0,0,.28)}
body.login label{color:#dce3ed;font-weight:700}
body.login form .input{min-height:46px;border:1px solid #2a3850;border-radius:10px;background:#0b1424;color:#fff;box-shadow:none}
body.login form .input:focus{border-color:var(--beguigo-theme-accent);box-shadow:0 0 0 1px var(--beguigo-theme-accent)}
body.login .button-primary{min-height:40px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--beguigo-theme-accent),var(--beguigo-theme-accent-strong))!important;font-weight:800;text-shadow:none;box-shadow:none}
body.login #nav a,body.login #backtoblog a,body.login .privacy-policy-page-link a{color:#c9bafa}
body.login .message,body.login .notice,body.login #login_error{border:1px solid #273449;border-left-width:4px;border-radius:10px;background:#101827;color:#eef2f7;box-shadow:none}

body.beguigo-auth-page :where(a,button,input,select,textarea):focus-visible,
body.beguigo-onboarding-page :where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(45,174,199,.62)!important;outline-offset:3px!important}
@media(prefers-reduced-motion:reduce){body.beguigo-auth-page *,body.beguigo-auth-page *::before,body.beguigo-auth-page *::after,body.beguigo-onboarding-page *,body.beguigo-onboarding-page *::before,body.beguigo-onboarding-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:980px){body.beguigo-auth-page,body.beguigo-onboarding-page{--entry-shell:min(100% - 30px,1180px)}body.beguigo-auth-page :where(.bl-hero-inner,.br-hero-inner){grid-template-columns:1fr!important}body.beguigo-auth-page :where(.bl-login-card,.br-form-card){max-width:680px;width:100%;margin-inline:auto}}
@media(max-width:640px){body.beguigo-auth-page,body.beguigo-onboarding-page{--entry-shell:min(100% - 22px,1180px)}body.beguigo-auth-page :where(.bl-actions,.br-actions){display:grid!important;grid-template-columns:1fr!important;width:100%}body.beguigo-auth-page :where(.bl-button,.br-button){width:100%}body.beguigo-auth-page :where(.bl-login-links,.br-login-note){display:grid;grid-template-columns:1fr}body.beguigo-onboarding-page .beguigo-welcome-flow-nav{padding:15px!important;margin-bottom:28px!important}body.beguigo-onboarding-page .beguigo-welcome-flow-progress{align-items:stretch!important;flex-direction:column!important}body.beguigo-onboarding-page .beguigo-welcome-flow-progress progress{max-width:none!important;width:100%!important}body.beguigo-onboarding-page .beguigo-welcome-flow-actions{display:grid!important;grid-template-columns:1fr!important}body.beguigo-onboarding-page .beguigo-welcome-flow-button{width:100%;text-align:center}}
