
.account-main{min-height:calc(100vh - 76px)}
.account-hero{padding:54px 0 26px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(0,102,255,.08),rgba(255,59,59,.025))}
.account-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.account-hero h1{font-size:clamp(2.5rem,6vw,4.8rem);margin:.15em 0 .18em}
.account-hero .lead{margin:0;max-width:760px}
.account-hero-logo{width:132px;filter:drop-shadow(0 16px 30px rgba(0,102,255,.28))}
.account-section{padding-top:38px}.account-status{margin-bottom:18px;padding:14px 16px;border:1px solid rgba(67,185,255,.35);background:rgba(0,102,255,.1);border-radius:13px}.account-status.error{border-color:rgba(255,59,59,.5);background:rgba(255,59,59,.09)}
.account-auth-card,.account-panel{border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,36,58,.95),rgba(10,25,42,.96));border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.account-auth-card{max-width:620px;margin:0 auto;padding:28px}.account-card-head,.panel-title{display:flex;gap:15px;align-items:flex-start}.account-card-head h2,.panel-title h3{margin:0}.account-card-head p,.panel-title p,.muted,.panel-note{color:var(--muted);margin:4px 0 0}
.account-form{display:grid;gap:18px;margin-top:24px}.account-form label{display:grid;gap:8px;font-weight:750;color:var(--silver)}.account-form input{width:100%;height:52px;border-radius:12px;border:1px solid var(--line);background:#071321;color:var(--ice);padding:0 14px;font:inherit;outline:none}.account-form input:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px rgba(0,102,255,.14)}.password-row{display:flex;gap:8px}.password-row input{flex:1}.password-toggle{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--ice);border-radius:11px;padding:0 14px;font-weight:800;cursor:pointer}.account-submit{height:52px;border:0;cursor:pointer;font:inherit}.account-submit[disabled]{opacity:.6;cursor:wait}.account-links{text-align:center}.account-links a{color:var(--blue-2);text-decoration:none}
.dashboard-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dashboard-top h2{font-size:clamp(1.8rem,4vw,2.7rem);margin:.1em 0}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.account-panel{padding:24px}.premium-panel{background:linear-gradient(180deg,rgba(16,36,58,.95),rgba(17,24,43,.97))}.account-kv{display:grid;gap:0;margin:22px 0 0}.account-kv>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid var(--line)}.account-kv dt{color:var(--muted)}.account-kv dd{margin:0;text-align:end;font-weight:800;overflow-wrap:anywhere}.plan-line{display:flex;align-items:center;gap:12px;margin-top:22px}.plan-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(0,102,255,.16);border:1px solid rgba(67,185,255,.35);font-weight:900;color:var(--blue-2)}.plan-badge.premium{background:rgba(255,188,55,.12);border-color:rgba(255,188,55,.4);color:#ffd26a}.panel-note{font-size:.9rem;margin-top:15px}
.devices-panel{margin-top:18px}.devices-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.btn.small{padding:9px 12px;font-size:.9rem;cursor:pointer}.devices-list{display:grid;gap:12px;margin-top:22px}.device-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,.9fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.device-main strong{display:block}.device-meta,.device-last{color:var(--muted);font-size:.92rem}.device-status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.78rem;font-weight:900;background:rgba(0,180,110,.1);color:#70e7ae;border:1px solid rgba(112,231,174,.25)}.device-status.revoked{background:rgba(255,59,59,.08);color:#ff9292;border-color:rgba(255,59,59,.25)}.device-revoke{border:1px solid rgba(255,59,59,.35);background:rgba(255,59,59,.07);color:#ffb1b1;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.device-revoke:disabled{opacity:.45;cursor:not-allowed}.empty-devices{color:var(--muted);padding:20px;text-align:center;border:1px dashed var(--line);border-radius:14px}.account-security-note{margin-top:18px;display:flex;gap:12px;align-items:flex-start}.account-security-note strong{white-space:nowrap}
.primary-nav a[aria-current="page"]{color:#fff}
@media(max-width:820px){.account-hero-logo{width:92px}.account-grid{grid-template-columns:1fr}.dashboard-top,.devices-head{align-items:flex-start;flex-direction:column}.device-row{grid-template-columns:1fr}.account-kv>div{align-items:flex-start}.account-security-note{flex-direction:column}}
@media(max-width:620px){.account-hero-inner{align-items:flex-start}.account-hero-logo{display:none}.account-auth-card,.account-panel{padding:19px}.password-row{display:grid}.password-toggle{height:44px}.account-kv>div{display:grid;gap:4px}.account-kv dd{text-align:start}}

/* V2.9.1 — Google Sign-In */
.auth-divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:1px 0}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:var(--line);flex:1}.auth-divider span{white-space:nowrap}.google-signin-wrap{display:grid;place-items:center;min-height:44px}.google-signin-button{width:100%;display:flex;justify-content:center;min-height:44px}.google-signin-button>div{max-width:100%!important}.google-signin-fallback{margin:0;color:var(--muted);font-size:.9rem;text-align:center}.google-signin-wrap.busy{opacity:.65;pointer-events:none}


/* V2.9.3 — Account security */
.security-panel{margin-top:18px}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.security-box{border:1px solid var(--line);background:rgba(255,255,255,.018);border-radius:15px;padding:18px}.security-box h4{margin:0 0 12px;font-size:1.06rem}.security-box p{color:var(--muted);margin:0 0 14px}.security-form{display:grid;gap:12px}.security-form label{display:grid;gap:7px;color:var(--silver);font-weight:750}.security-form input{width:100%;height:46px;border-radius:11px;border:1px solid var(--line);background:#071321;color:var(--ice);padding:0 13px;font:inherit;outline:none}.security-form input:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px rgba(0,102,255,.14)}.security-help{font-size:.86rem;margin-top:12px!important}.btn.danger{border-color:rgba(255,59,59,.45);background:rgba(255,59,59,.1);color:#ffaaaa}.danger-box{border-color:rgba(255,59,59,.28)}.delete-confirm{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,59,59,.25)}
@media(max-width:820px){.security-grid{grid-template-columns:1fr}}


/* V2.9.4 — Password recovery */
.recovery-link-row{margin-top:-4px}.text-link-button{appearance:none;border:0;background:transparent;color:var(--blue-2);font:inherit;font-weight:750;padding:0;cursor:pointer;text-decoration:none}.text-link-button:hover{text-decoration:underline}.password-recovery{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.recovery-heading h3{margin:0 0 7px;font-size:1.25rem}.recovery-heading p{margin:0;color:var(--muted);line-height:1.55}.recovery-form{margin-top:18px}.recovery-code-note{margin-top:18px;padding:12px 14px;border:1px solid rgba(67,185,255,.3);background:rgba(0,102,255,.08);border-radius:12px;color:var(--silver);line-height:1.5}.recovery-back-row{margin-top:18px}.account-auth-card.recovery-active #loginForm{display:none}.account-auth-card.recovery-active #passwordRecoveryView{display:block}.account-auth-card:not(.recovery-active) #passwordRecoveryView{display:none}


/* V2.9.5 — Account creation */
.register-link-row{margin-top:-6px}.account-register{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.register-form{margin-top:18px}.register-password-help{margin:-8px 0 0;color:var(--muted);font-size:.9rem}.register-legal{margin:16px 0 0;color:var(--muted);font-size:.86rem;line-height:1.55;text-align:center}.account-auth-card.register-active #loginForm{display:none}.account-auth-card.register-active #registerView{display:block}.account-auth-card:not(.register-active) #registerView{display:none}.account-auth-card.register-active #passwordRecoveryView{display:none}.account-auth-card.recovery-active #registerView{display:none}


/* V2.9.6 — Email verification */
.verification-panel{margin-bottom:18px;border-color:rgba(67,185,255,.42);background:linear-gradient(180deg,rgba(0,102,255,.12),rgba(10,25,42,.96))}.verification-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:end;margin-top:20px}.verification-form label{display:grid;gap:8px;color:var(--silver);font-weight:750}.verification-form input{width:100%;height:46px;border-radius:11px;border:1px solid var(--line);background:#071321;color:var(--ice);padding:0 13px;font:inherit;letter-spacing:.12em;outline:none}.verification-form input:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px rgba(0,102,255,.14)}.verification-actions{display:flex;gap:10px;flex-wrap:wrap}.verification-actions .btn{min-height:46px}.verification-panel[hidden]{display:none!important}@media(max-width:720px){.verification-form{grid-template-columns:1fr}.verification-actions{display:grid;grid-template-columns:1fr}.verification-actions .btn{width:100%}}
/* V2.9.7 — Subscription card */
.plan-overview{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:16px;border:1px solid rgba(67,185,255,.18);border-radius:16px;background:rgba(255,255,255,.025)}
.plan-overview .plan-line{margin:0;min-width:0}.plan-overview #planName{overflow-wrap:anywhere}
.plan-status{display:grid;justify-items:end;gap:5px;flex:0 0 auto}.plan-status-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.plan-status-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:rgba(0,180,110,.1);border:1px solid rgba(112,231,174,.28);color:#70e7ae;font-weight:900}.plan-status-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}.plan-status-chip.inactive{background:rgba(255,59,59,.08);border-color:rgba(255,59,59,.25);color:#ff9292}
.subscription-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}.subscription-actions .btn[disabled]{opacity:.58;cursor:not-allowed;filter:saturate(.65)}.coming-soon{display:inline-flex;padding:5px 9px;border-radius:999px;border:1px solid rgba(67,185,255,.25);background:rgba(0,102,255,.08);color:var(--blue-2);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:620px){.plan-overview{align-items:flex-start;flex-direction:column}.plan-status{justify-items:start}.subscription-actions{align-items:stretch}.subscription-actions .btn{width:100%}.coming-soon{width:max-content}}


/* V2.9.8 — Compact account + unified devices/sessions */
.account-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start}
.account-profile-panel{padding:20px 22px}
.account-profile-panel .panel-title p{max-width:420px}
.account-kv-compact{margin-top:14px}
.account-kv-compact>div{padding:10px 0}
.profile-inline-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.profile-inline-form label{display:grid;gap:8px;color:var(--silver);font-weight:750}
.profile-inline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.profile-inline-row input{width:100%;height:42px;border-radius:11px;border:1px solid var(--line);background:#071321;color:var(--ice);padding:0 13px;font:inherit;outline:none}
.profile-inline-row input:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px rgba(0,102,255,.14)}
.device-sessions-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.device-sessions-row>div{min-width:0}.device-sessions-row h4{margin:0 0 5px;font-size:1rem}.device-sessions-row p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45;max-width:760px}.device-sessions-row .btn{flex:0 0 auto}
.security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:820px){.account-grid{grid-template-columns:1fr}.device-sessions-row{align-items:flex-start;flex-direction:column}.device-sessions-row .btn{width:100%}}
@media(max-width:620px){.account-profile-panel{padding:17px}.profile-inline-row{grid-template-columns:1fr}.profile-inline-row .btn{width:100%}}

/* V2.9.9 — Inline email verification + compact security */
.verification-inline{margin-top:16px;padding-top:16px;border-top:1px solid rgba(67,185,255,.22)}
.verification-inline[hidden]{display:none!important}
.verification-inline-head{display:flex;align-items:flex-start;gap:12px}
.verification-inline-head h4{margin:0;font-size:1rem}
.verification-inline-head p{margin:4px 0 0;color:var(--muted);font-size:.88rem;line-height:1.45}
.verification-inline-icon{width:36px;height:36px;min-width:36px;font-size:.92rem}
.verification-form-inline{grid-template-columns:minmax(160px,1fr);gap:10px;margin-top:12px}
.verification-form-inline .verification-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.verification-form-inline .verification-actions .btn{width:100%;min-height:42px;padding:8px 10px}
.verification-form-inline input{height:42px}
.security-grid-compact{grid-template-columns:1fr;gap:12px}
.security-password-box{padding:17px 18px}
.security-form-compact{gap:10px}
.security-password-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.security-password-submit{width:100%}
.security-help{margin-bottom:0!important}
.danger-box-compact{padding:15px 18px}
.danger-compact-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.danger-compact-row>div{min-width:0}
.danger-compact-row h4{margin:0 0 5px}
.danger-compact-row p{margin:0;max-width:820px}
.danger-compact-row .btn{flex:0 0 auto}
.delete-fields-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.delete-actions-row{display:flex;gap:10px}
.delete-actions-row .btn{flex:1}
@media(max-width:820px){.security-password-pair,.delete-fields-row{grid-template-columns:1fr}.danger-compact-row{align-items:flex-start;flex-direction:column}.danger-compact-row .btn{width:100%}}
@media(max-width:620px){.verification-form-inline .verification-actions{grid-template-columns:1fr}.verification-inline-head{gap:10px}}


/* V2.9.11 — Compact devices header actions */
.devices-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex:0 0 auto}
@media(max-width:820px){.devices-head-actions{width:100%;justify-content:flex-start}.devices-head-actions .btn{flex:1 1 auto}}

/* V2.9.12 — Account mobile density pass. Functional layout unchanged. */
@media(max-width:620px){
  .account-main{min-height:calc(100vh - 60px)}
  .account-hero{padding:30px 0 20px}
  .account-hero h1{font-size:clamp(2.35rem,12vw,3.2rem);line-height:1;margin:.16em 0 .16em}
  .account-hero .lead{font-size:1rem;line-height:1.55}
  .account-section{padding-top:24px}
  .account-grid{gap:14px}
  .account-auth-card,.account-panel{padding:16px;border-radius:18px}
  .account-profile-panel{padding:16px}
  .panel-title,.account-card-head{gap:12px}
  .account-kv-compact{margin-top:11px}
  .account-kv-compact>div{padding:8px 0}
  .profile-inline-form{margin-top:11px;padding-top:11px}
  .verification-inline{margin-top:13px;padding-top:13px}
  .verification-form-inline{margin-top:10px}
  .plan-overview{margin-top:16px;padding:13px;border-radius:14px}
  .account-kv{margin-top:16px}
  .account-kv>div{padding:10px 0}
  .subscription-actions{margin-top:14px;padding-top:13px;gap:8px}
  .panel-note{margin-top:12px;line-height:1.5}
  .devices-panel,.security-panel{margin-top:14px}
  .devices-list{margin-top:16px;gap:10px}
  .device-row{padding:14px;gap:10px}
  .security-grid{margin-top:16px}
  .security-box,.security-password-box,.danger-box-compact{padding:15px}
  .security-form{gap:10px}
  .delete-actions-row{gap:8px}
  .footer-grid{gap:22px}
}
@media(max-width:520px){
  .devices-head-actions{
    display:grid;
    grid-template-columns:minmax(0,.72fr) minmax(0,1.55fr);
    gap:8px;
  }
  .devices-head-actions .btn{
    width:100%;
    min-width:0;
    padding:9px 8px;
    font-size:.78rem;
    line-height:1.25;
    white-space:normal;
  }
  .delete-actions-row .btn{padding-inline:10px;font-size:.88rem}
}

/* V2.9.12-CANDIDATE — Compact PayPal subscription control.
   Visual-only: PayPal SDK configuration and subscription flow unchanged. */
#paypal-subscription-button{display:block;width:240px;max-width:100%;min-height:44px;flex:0 0 240px;overflow:hidden}
#paypal-subscription-button iframe{max-width:100%!important}
#paypal-subscription-button>div{max-width:100%!important}
#paypal-subscription-button .paypal-buttons{max-width:100%!important}
.subscription-actions #paypal-subscription-result{flex:1 1 260px;min-width:220px}
@media(max-width:620px){
  #paypal-subscription-button{width:100%;flex:1 1 100%;min-height:44px}
  .subscription-actions #paypal-subscription-result{min-width:0;width:100%;flex:1 1 100%}
}


/* V2.9.15 — Espace client global visual refinement. */
.account-main{background:radial-gradient(circle at 85% 5%,rgba(0,102,255,.055),transparent 32%),linear-gradient(180deg,#07101d 0%,#0a1220 100%)}
.account-hero{padding:38px 0 22px;background:linear-gradient(135deg,rgba(0,102,255,.11),rgba(10,15,29,.18));border-bottom:1px solid rgba(67,185,255,.12)}
.account-hero-inner{max-width:1180px;gap:24px}.account-hero h1{font-size:clamp(2.15rem,4vw,3.5rem);letter-spacing:-.035em}.account-hero .lead{max-width:680px;font-size:1.02rem}.account-hero-logo{width:84px;opacity:.92;filter:drop-shadow(0 10px 22px rgba(0,102,255,.24))}
.account-section{padding-top:34px}.dashboard-top{margin-bottom:18px;padding:14px 18px;border:1px solid rgba(67,185,255,.14);border-radius:16px;background:rgba(14,26,42,.72);box-shadow:0 12px 30px rgba(0,0,0,.12)}.dashboard-top h2{font-size:clamp(1.45rem,3vw,2rem);margin:.12em 0}.dashboard-top .muted{margin:.2em 0 0}.dashboard-top .eyebrow{display:inline-flex;padding:4px 8px;border-radius:999px;border:1px solid rgba(67,185,255,.22);background:rgba(0,102,255,.08);font-size:.7rem;letter-spacing:.1em}
.account-grid{grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);gap:14px}.account-panel{padding:20px;border-radius:18px;border-color:rgba(67,185,255,.13);box-shadow:0 16px 38px rgba(0,0,0,.14)}.account-panel .panel-title h3{font-size:1.15rem}.account-panel .panel-title p{font-size:.86rem}.account-profile-panel{padding:20px}.account-kv{margin-top:16px}.account-kv>div{padding:10px 0}.account-kv dt{font-size:.9rem}.account-kv dd{font-size:.92rem}.profile-inline-form{margin-top:12px;padding-top:12px}.profile-inline-row input{height:40px}.profile-inline-row .btn{height:40px}
.plan-overview{margin-top:16px;padding:13px 14px;border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(0,102,255,.055));border-color:rgba(67,185,255,.2)}.plan-badge{padding:5px 9px;font-size:.8rem}.plan-status-chip{padding:5px 9px;font-size:.84rem}.premium-panel .account-kv{margin-top:10px}.subscription-actions{margin-top:13px;padding-top:13px;gap:9px;align-items:center}#paypal-subscription-button{width:220px;min-width:220px;flex:0 0 220px;min-height:42px;max-height:90px;overflow:hidden;border-radius:9px}#paypal-subscription-button iframe{width:100%!important;max-width:100%!important}#paypal-subscription-button>div{width:100%!important;max-width:100%!important}.subscription-actions .btn{height:42px}.subscription-actions #paypal-subscription-result{flex:1 1 180px;min-width:150px}.panel-note{margin-top:10px;font-size:.82rem;color:var(--muted)}
.devices-panel{margin-top:14px;padding:18px 20px}.devices-head{align-items:center}.devices-head .panel-title{flex:1}.devices-head-actions{gap:8px}.devices-head-actions .btn{border-radius:10px;padding:8px 11px}.devices-list{margin-top:14px;gap:8px}.device-row{grid-template-columns:minmax(0,1.35fr) minmax(130px,.75fr) minmax(160px,.85fr) auto;padding:12px 14px;border-radius:13px;background:rgba(255,255,255,.018)}.device-main strong{font-size:.93rem}.device-meta,.device-last{font-size:.82rem}.device-status{padding:3px 8px;font-size:.72rem}.device-revoke{padding:7px 10px;border-radius:9px;font-size:.82rem}
.security-panel{margin-top:14px;padding:18px 20px}.security-grid-compact{gap:10px}.security-password-box,.danger-box-compact{padding:15px 16px;border-radius:14px}
@media(max-width:900px){.account-grid{grid-template-columns:1fr}.account-hero-logo{width:72px}}
@media(max-width:620px){.account-hero{padding:24px 0 16px}.account-hero h1{font-size:clamp(2rem,10vw,2.8rem)}.account-hero .lead{font-size:.94rem}.account-section{padding-top:20px}.dashboard-top{padding:12px 14px;border-radius:14px}.dashboard-top .btn{width:auto}.account-panel{padding:15px;border-radius:15px}.account-profile-panel{padding:15px}.plan-overview{padding:11px}.subscription-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}#paypal-subscription-button{width:100%;min-width:0;flex:1;grid-column:1/-1}.subscription-actions .btn{width:auto}.subscription-actions #paypal-subscription-result{grid-column:1/-1;width:100%}.devices-panel,.security-panel{padding:15px}.devices-head{align-items:flex-start}.devices-head-actions{width:100%}.devices-head-actions .btn{font-size:.76rem}.device-row{grid-template-columns:1fr 1fr}.device-last{grid-column:1/-1}.device-revoke{justify-self:start}}
@media(max-width:430px){.dashboard-top{align-items:stretch}.dashboard-top .btn{width:100%}.subscription-actions{grid-template-columns:1fr}.subscription-actions .btn{width:100%}.devices-head-actions{grid-template-columns:1fr 1fr}.devices-head-actions .btn{padding:8px 6px}.device-row{grid-template-columns:1fr}.device-last{grid-column:auto}.device-revoke{width:100%}}
