/*
 * FloS Premium Reading Lounge login · 2026-10-20
 * Login only: scoped to body.ma-login-luxe, independent of registration styles.
 * Existing auth, social providers, CSRF and member redirect logic are untouched.
 */
body.ma-login-luxe{
  --luxe-ink:#29251f;
  --luxe-muted:#786e5e;
  --luxe-gold:#b68b47;
  --luxe-gold-light:#e7d4a8;
  --luxe-forest:#17392f;
  --luxe-cream:#fffdf7;
  color:var(--luxe-ink);
  background:
    radial-gradient(ellipse 65% 65% at 1% 2%,rgba(236,215,166,.37),transparent 75%),
    radial-gradient(ellipse 50% 80% at 97% 92%,rgba(224,205,163,.21),transparent 74%),
    linear-gradient(140deg,#f9f5ec 2%,#f5efe3 58%,#f9f7f1);
  min-height:100vh;
  overflow-x:hidden;
}
.ma-login-luxe .ma-login-shell{max-width:1280px;padding:0 clamp(16px,3vw,42px) 24px}
.ma-login-luxe .ma-luxe-topbar{
  padding:21px 2px 20px;min-height:89px;position:relative;
}
.ma-login-luxe .ma-luxe-topbar::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(175,145,91,.36) 18%,rgba(175,145,91,.36) 83%,transparent);
}
.ma-login-luxe .ma-luxe-brand{gap:12px;align-items:center}
.ma-login-luxe .ma-brand-seal{
  display:grid;place-items:center;width:40px;height:40px;
  border:1px solid #ad8540;border-radius:50%;color:#9e7434;
  background:radial-gradient(circle at 32% 27%,#fffdf5,#f4e8cf);
  box-shadow:inset 0 0 0 3px #fbf4e3,0 3px 14px rgba(116,77,24,.12);
  font-family:Georgia,serif;font-size:24px;line-height:1;
}
.ma-login-luxe .ma-brand-type{display:flex;align-items:baseline;gap:12px}
.ma-login-luxe .brand-mark{font-size:27px;color:#2e2a23;letter-spacing:.065em}
.ma-login-luxe .brand-sub{font-size:10px;letter-spacing:.19em;color:#ad925e;font-weight:800}
.ma-login-luxe .ma-luxe-nav{gap:10px}
.ma-login-luxe .ma-luxe-nav .chip{
  min-height:35px;padding:7px 14px;font-weight:700;font-size:12px;
  color:#6b5c49;border-color:transparent;background:transparent;
  transition:background .2s,color .2s,transform .2s;
}
.ma-login-luxe .ma-luxe-nav .chip:hover{background:#eee4d2;color:#2e2921}
.ma-login-luxe .ma-luxe-nav .chip.solid{
  padding:8px 20px;background:#2d2924;border:1px solid #2d2924;
  color:#fff8ec;box-shadow:inset 0 1px rgba(255,255,255,.13),0 4px 10px rgba(57,43,25,.10)
}
.ma-login-luxe .ma-luxe-nav .chip.solid:hover{background:#4b3c2c;color:#fff;transform:translateY(-1px)}
.ma-login-luxe .ma-luxe-register span{padding-left:5px;font-size:13px;color:#e8c781}

.ma-login-luxe .ma-login-layout{
  max-width:none;margin:25px 0 10px;display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  align-items:stretch;gap:0;min-height:660px;
  isolation:isolate;
  filter:drop-shadow(0 24px 37px rgba(53,42,27,.09));
}

/* Forest-green editorial book salon */
.ma-login-luxe .ma-login-story{
  position:relative;display:flex;flex-direction:column;min-width:0;
  padding:32px clamp(25px,3.3vw,48px) 29px;overflow:hidden;
  border:1px solid #325548;border-radius:26px 0 0 26px;
  color:#f8f0df;
  background:
    radial-gradient(ellipse 75% 48% at 104% 20%,rgba(181,142,74,.24),transparent 73%),
    radial-gradient(ellipse 90% 65% at -2% 102%,rgba(88,123,98,.28),transparent 76%),
    repeating-linear-gradient(116deg,rgba(255,255,255,.011) 0 1px,transparent 1px 7px),
    linear-gradient(154deg,#1b4438 0%,#17382f 45%,#10291f 100%);
}
.ma-login-luxe .ma-login-story::before{
  content:"";position:absolute;inset:15px;pointer-events:none;
  border:1px solid rgba(232,206,149,.31);border-radius:17px 0 0 17px;
}
.ma-login-luxe .ma-login-story::after{
  content:"✦";position:absolute;right:-33px;top:37%;font-size:255px;
  color:rgba(220,180,106,.055);line-height:1;pointer-events:none;
  transform:rotate(19deg);font-family:Georgia,serif;
}
.ma-login-luxe .ma-story-topline{
  z-index:1;position:relative;display:flex;align-items:center;justify-content:space-between;
  gap:12px;color:#e5c990;letter-spacing:.2em;font-size:10px;font-weight:800;
}
.ma-login-luxe .ma-story-star{font-family:Georgia,serif;font-size:23px;letter-spacing:0}
.ma-login-luxe .ma-story-body{position:relative;z-index:1;flex:1;padding:20px 4px 0}
.ma-login-luxe .ma-story-emblem{
  display:grid;place-items:center;position:relative;margin:6px 0 25px;
  width:71px;height:71px;border:1px solid #bc985e;border-radius:50%;
  font:44px/1 Georgia,serif;color:#f1dbad;
  box-shadow:inset 0 0 0 5px #1e4135,inset 0 0 0 6px rgba(232,204,145,.45);
}
.ma-login-luxe .ma-story-emblem span{position:absolute;right:12px;bottom:8px;font-size:23px;line-height:1}
.ma-login-luxe .ma-story-kicker{margin:0 0 13px;color:#d6b880;letter-spacing:.2em;font-size:10px;font-weight:800}
.ma-login-luxe .ma-story-body h2{
  margin:0 0 22px;max-width:15em;
  color:#fff7e7;font-family:"Gowun Batang",serif;
  font-size:clamp(30px,3.6vw,48px);line-height:1.42;letter-spacing:-.055em;font-weight:700;word-break:keep-all;
}
.ma-login-luxe .ma-story-body h2 em{
  color:#efcf8f;font-style:normal;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px;
  text-decoration-color:rgba(239,207,143,.5);
}
.ma-login-luxe .ma-story-description{
  margin:0;color:#e3e6d9;font-size:clamp(13px,1.3vw,15px);line-height:2.05;
  letter-spacing:.012em;word-break:keep-all;
}
.ma-login-luxe .ma-book-art{
  display:flex;align-items:end;justify-content:center;
  max-width:380px;height:150px;margin:21px auto 13px;
  perspective:600px;position:relative;
}
.ma-login-luxe .ma-book-art::before{
  content:"";position:absolute;bottom:3px;left:0;right:0;height:11px;border-radius:50%;
  background:rgba(0,0,0,.4);filter:blur(11px);
}
.ma-login-luxe .ma-book-shelf{
  display:flex;align-items:flex-end;justify-content:center;gap:8px;
  width:290px;height:148px;padding:0 0 9px;position:relative;
  border-bottom:6px solid #aa8450;
  box-shadow:0 6px 0 -3px #d6ae70;
}
.ma-login-luxe .ma-illustrated-book{
  position:relative;display:flex;align-items:center;flex-direction:column;justify-content:space-around;
  height:125px;width:68px;padding:12px 5px;color:#ecd8ab;
  box-shadow:inset 5px 0 5px rgba(0,0,0,.22),inset -3px 0 3px rgba(255,255,255,.11),5px 8px 13px rgba(0,0,0,.21);
  border:1px solid rgba(236,202,126,.28);border-top:3px solid rgba(233,199,133,.6);
  border-bottom:4px solid rgba(10,14,10,.27);
}
.ma-login-luxe .ma-illustrated-book::after{content:"";position:absolute;inset:8px 5px;border-top:1px solid rgba(237,203,130,.55);border-bottom:1px solid rgba(237,203,130,.55);pointer-events:none}
.ma-login-luxe .ma-illustrated-book i{font:28px Georgia,serif;font-style:normal}
.ma-login-luxe .ma-illustrated-book b{font-size:10px;letter-spacing:.11em;writing-mode:vertical-rl;max-height:54px}
.ma-login-luxe .ma-illustrated-book small{font-size:9px}
.ma-login-luxe .ma-book-one{height:109px;transform:rotate(-12deg) translate(7px,1px);background:linear-gradient(90deg,#8b5b38,#b0804c 50%,#855333)}
.ma-login-luxe .ma-book-two{height:134px;z-index:1;background:linear-gradient(90deg,#5e2630,#8e4148 55%,#4c222b)}
.ma-login-luxe .ma-book-three{height:116px;transform:rotate(8deg) translate(-5px,0);background:linear-gradient(90deg,#183947,#29606b 55%,#17363e)}
.ma-login-luxe .ma-story-footer{z-index:1;position:relative;display:flex;align-items:flex-end;gap:15px;padding:13px 4px 2px}
.ma-login-luxe .ma-story-rule{flex:0 0 28px;width:28px;height:1px;margin-bottom:19px;background:#d5b276}
.ma-login-luxe .ma-story-footer p{margin:0;flex:1;line-height:1.8;color:#e1d4ba;font-size:12px}
.ma-login-luxe .ma-story-number{font:11px Georgia,serif;letter-spacing:.11em;color:#d6b37e}

/* Right-hand members' entrance */
.ma-login-luxe .ma-login-panel{
  display:flex;align-items:center;justify-content:center;min-width:0;
  border-radius:0 26px 26px 0;border:1px solid #e8ddc8;border-left:0;
  padding:clamp(25px,3vw,48px);
  background:
    radial-gradient(ellipse 60% 55% at 98% 5%,rgba(230,206,157,.20),transparent 78%),
    linear-gradient(145deg,#fffdf8 0%,#f8f4eb 100%);
}
.ma-login-luxe .ma-luxe-card{
  position:relative;width:100%;max-width:445px;margin:0;padding:18px 0 10px;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.ma-login-luxe .ma-login-card-head{margin-bottom:26px}
.ma-login-luxe .ma-login-eyebrow{margin:0 0 10px;font-size:11px;letter-spacing:.22em;font-weight:800;color:#98733a}
.ma-login-luxe .ma-login-eyebrow span{font-size:14px;margin-right:5px}
.ma-login-luxe .ma-title{
  font-family:"Gowun Batang",serif;font-size:clamp(36px,3.8vw,48px);
  line-height:1.22;margin:0 0 14px;font-weight:700;color:#28251f;letter-spacing:-.03em;
}
.ma-login-luxe .ma-sum{margin:0;color:#796e61;font-size:14px;line-height:1.9;letter-spacing:-.012em}
.ma-login-luxe .ma-error{border-radius:13px;border-color:#cb9180;background:#fff0ea;box-shadow:0 4px 10px rgba(125,45,22,.04)}
.ma-login-luxe .ma-luxe-field{margin:0 0 19px}
.ma-login-luxe .ma-luxe-field>label{margin-bottom:8px;color:#4d4439;font-size:13px;font-weight:800}
.ma-login-luxe .ma-input-wrap{position:relative}
.ma-login-luxe .ma-input-icon{
  position:absolute;z-index:1;top:50%;left:17px;transform:translateY(-50%);
  width:20px;height:20px;color:#ac956f;pointer-events:none;
}
.ma-login-luxe .ma-input-wrap input[type="email"],
.ma-login-luxe .ma-input-wrap input[type="password"],
.ma-login-luxe .ma-input-wrap input[type="text"]{
  box-sizing:border-box;width:100%;height:54px;min-height:54px;margin:0;
  padding:12px 53px 12px 49px;border:1px solid #d7c8ad;border-radius:12px;
  background:rgba(255,255,255,.79);color:#342b21;font-size:15px;font-weight:500;
  transition:box-shadow .2s,border-color .2s,background .2s;
}
.ma-login-luxe .ma-input-wrap input::placeholder{font-size:13px;color:#a69a87;font-weight:400}
.ma-login-luxe .ma-input-wrap input:focus{
  background:#fff;outline:none;border-color:#b88c42;
  box-shadow:0 0 0 4px rgba(189,147,76,.17),0 3px 13px rgba(125,87,25,.05);
}
.ma-login-luxe .ma-visibility-toggle{
  display:grid;place-items:center;position:absolute;right:7px;top:50%;transform:translateY(-50%);
  min-width:55px;min-height:39px;padding:5px 8px;
  border:0;border-radius:8px;background:transparent;color:#826e51;
  font-size:12px;font-weight:800;cursor:pointer;
}
.ma-login-luxe .ma-visibility-toggle:hover{background:#f2e7d5;color:#513b20}
.ma-login-luxe .ma-luxe-submit{
  display:flex;justify-content:space-between;align-items:center;width:100%;min-height:57px;
  margin:25px 0 0;padding:12px 20px 12px 25px;border-radius:12px;
  color:#fffaf0;border:1px solid #33281e;
  background:linear-gradient(110deg,#28231f 0%,#41352b 76%,#4d3b2b 100%);
  box-shadow:inset 0 1px rgba(255,244,210,.22),0 8px 16px rgba(63,41,15,.16);
  font-size:16px;font-weight:850;letter-spacing:.04em;
  transition:transform .18s,box-shadow .18s,background .18s;
}
.ma-login-luxe .ma-luxe-submit:hover:not(:disabled){
  transform:translateY(-2px);
  background:linear-gradient(110deg,#332b25,#58452d);
  box-shadow:inset 0 1px rgba(255,244,210,.26),0 12px 23px rgba(63,41,15,.19);
}
.ma-login-luxe .ma-luxe-submit:active:not(:disabled){transform:translateY(0)}
.ma-login-luxe .ma-luxe-submit:disabled{opacity:.65;cursor:wait}
.ma-login-luxe .ma-submit-arrow{
  display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(233,197,127,.45);
  border-radius:50%;color:#efd3a1;font-size:21px;font-weight:400;
}
.ma-login-luxe .ma-luxe-switch{margin:22px 0 0;padding-top:19px;border-color:#e3d7c5;font-size:13px}
.ma-login-luxe .ma-luxe-switch a{color:#79582a;text-decoration:none;border-bottom:1px solid #ba9961;font-weight:850;white-space:nowrap}
.ma-login-luxe .ma-luxe-switch a:hover{color:#36291a}
.ma-login-luxe .ma-login-brand-note{display:flex;align-items:center;gap:12px;justify-content:center;margin:23px 0 0}
.ma-login-luxe .ma-brand-note-line{width:29px;height:1px;background:#dbc7a3}
.ma-login-luxe .ma-login-brand-note p{margin:0;font-size:11px;letter-spacing:.035em;color:#a0927b}
.ma-login-luxe .ma-login-brand-note strong{font-family:Georgia,serif;font-weight:700;color:#8b703f;letter-spacing:.12em}

/* Social login remains provider-colored and clearly distinct. */
.ma-login-luxe .ma-social{gap:9px;margin-bottom:8px}
.ma-login-luxe .ma-social-btn{
  min-height:47px;border-radius:11px;
  box-shadow:0 2px 7px rgba(56,43,25,.035);
  transition:transform .16s,box-shadow .16s,filter .16s;
}
.ma-login-luxe .ma-social-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(56,43,25,.11)}
.ma-login-luxe .ma-or{margin:17px 0 20px;color:#9c907c}
.ma-login-luxe .ma-or::before,.ma-login-luxe .ma-or::after{background:#dfd3bb}

.ma-login-luxe .ma-login-footer{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:18px 2px 8px;font-size:12px;color:#96836b;
}
.ma-login-luxe .ma-login-footer a{color:#725c43;text-decoration:none}
.ma-login-luxe .ma-login-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.ma-login-luxe a:focus-visible,
.ma-login-luxe button:focus-visible{outline:3px solid #d3a55a;outline-offset:3px}

/* Tablet: keep the login form first while preserving the lounge visual. */
@media(max-width:980px){
  .ma-login-luxe .ma-login-layout{grid-template-columns:1fr;max-width:680px;margin:20px auto}
  .ma-login-luxe .ma-login-panel{grid-row:1;border:1px solid #e8ddc8;border-radius:22px 22px 0 0;padding:40px 38px}
  .ma-login-luxe .ma-login-story{grid-row:2;min-height:390px;padding:25px 32px;border-radius:0 0 22px 22px;border-top:0}
  .ma-login-luxe .ma-login-story::before{border-radius:0 0 15px 15px}
  .ma-login-luxe .ma-story-body{padding-top:12px}
  .ma-login-luxe .ma-story-body h2{font-size:32px;margin-bottom:8px}
  .ma-login-luxe .ma-story-emblem{width:54px;height:54px;font-size:32px;margin:5px 0 13px}
  .ma-login-luxe .ma-story-emblem span{font-size:15px}
  .ma-login-luxe .ma-story-description{font-size:13px}
  .ma-login-luxe .ma-book-art{position:absolute;right:14px;bottom:35px;width:190px;transform:scale(.72);transform-origin:bottom right;pointer-events:none}
  .ma-login-luxe .ma-story-footer{margin-top:24px}
}
@media(max-width:640px){
  .ma-login-luxe .ma-login-shell{padding:0 12px 18px}
  .ma-login-luxe .ma-luxe-topbar{min-height:75px;padding:14px 3px}
  .ma-login-luxe .ma-brand-seal{width:34px;height:34px;font-size:20px}
  .ma-login-luxe .ma-luxe-brand{gap:7px}
  .ma-login-luxe .ma-brand-type{gap:5px;flex-direction:column;align-items:flex-start}
  .ma-login-luxe .brand-mark{font-size:21px;line-height:1.1}
  .ma-login-luxe .brand-sub{font-size:8px;letter-spacing:.08em}
  .ma-login-luxe .ma-luxe-nav{gap:0}
  .ma-login-luxe .ma-luxe-nav .chip.solid{padding:6px 11px;min-height:33px;font-size:11px}
  .ma-login-luxe .ma-login-layout{margin:13px auto 5px}
  .ma-login-luxe .ma-login-panel{padding:28px 21px 26px}
  .ma-login-luxe .ma-luxe-card{max-width:none;padding:0}
  .ma-login-luxe .ma-login-card-head{margin-bottom:24px}
  .ma-login-luxe .ma-title{font-size:37px;margin-bottom:10px}
  .ma-login-luxe .ma-sum{font-size:13px;line-height:1.8}
  .ma-login-luxe .ma-luxe-field{margin-bottom:15px}
  .ma-login-luxe .ma-login-story{min-height:313px;padding:23px}
  .ma-login-luxe .ma-story-body h2{font-size:26px}
  .ma-login-luxe .ma-story-emblem{display:none}
  .ma-login-luxe .ma-story-kicker{margin:14px 0 8px;font-size:9px}
  .ma-login-luxe .ma-story-description{font-size:12px;line-height:1.85}
  .ma-login-luxe .ma-book-art{right:3px;bottom:33px;transform:scale(.53)}
  .ma-login-luxe .ma-story-footer{gap:9px;margin-top:27px}
  .ma-login-luxe .ma-story-footer p{font-size:10px}
  .ma-login-luxe .ma-story-number{font-size:9px}
  .ma-login-luxe .ma-login-footer{font-size:10px;flex-wrap:wrap;justify-content:center}
  .ma-login-luxe .ma-login-footer span{display:none}
}
@media(max-width:375px){
  .ma-login-luxe .ma-login-panel{padding:24px 16px}
  .ma-login-luxe .ma-story-body h2{font-size:24px}
  .ma-login-luxe .ma-book-art{opacity:.42;transform:scale(.42)}
}
@media(prefers-reduced-motion:reduce){
  .ma-login-luxe *,.ma-login-luxe *::before,.ma-login-luxe *::after{transition:none!important;animation:none!important}
}
