/* POXY — Login / Sign up (X-inspired split, dark luxury) */
.visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.poxy-auth-overlay{
  position:fixed;inset:0;z-index:1000;
  display:none;flex-direction:column;
  background:#000;
  overflow:hidden;
  padding:0;
  pointer-events:none;
}
.poxy-auth-overlay.poxy-auth-overlay--open{
  display:flex;
  pointer-events:auto;
}
.poxy-auth-overlay.hidden{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
.poxy-auth-shell{
  flex:1;display:flex;align-items:stretch;justify-content:center;
  min-height:0;width:100%;max-width:1280px;margin:0 auto;
}
.poxy-auth-panel{
  flex:1;display:flex;flex-direction:column;justify-content:center;
  padding:32px clamp(24px,5vw,80px) 24px;
  max-width:600px;min-width:0;
}
.poxy-auth-headline{
  margin:0 0 32px;
  font-family:'Hanken Grotesk',Inter,sans-serif;
  font-size:clamp(2rem,5vw,3.25rem);
  font-weight:800;line-height:1.15;letter-spacing:-0.03em;
  color:#f5f5f7;
  max-width:20ch;
}
.poxy-auth-oauth-stack{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}
.poxy-auth-oauth{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;max-width:300px;padding:11px 20px;
  border-radius:999px;border:1px solid rgba(255,255,255,0.12);
  background:#f5f5f7;color:#0f0f12;
  font-family:inherit;font-size:15px;font-weight:700;
  cursor:pointer;transition:background 0.2s,transform 0.15s;
}
.poxy-auth-oauth:hover{background:#fff;transform:translateY(-1px)}
.poxy-auth-oauth--apple{background:#f5f5f7}
.poxy-auth-oauth--google .poxy-auth-oauth-icon{
  width:20px;height:20px;border-radius:50%;
  background:conic-gradient(from 180deg,#4285f4,#34a853,#fbbc05,#ea4335,#4285f4);
}
.poxy-auth-oauth--phone{border-color:rgba(243,198,111,0.25);background:rgba(26,26,36,0.9);color:#f5f5f7}
.poxy-auth-oauth--phone:hover{border-color:rgba(243,198,111,0.45)}
.poxy-auth-oauth-icon{
  width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
}
.poxy-auth-sep{
  display:flex;align-items:center;gap:12px;
  max-width:300px;margin:8px 0 20px;
  color:#71717a;font-size:13px;font-weight:500;
}
.poxy-auth-sep::before,.poxy-auth-sep::after{
  content:'';flex:1;height:1px;background:rgba(255,255,255,0.12);
}
.poxy-auth-field{
  width:100%;max-width:300px;
  padding:14px 16px;margin-bottom:12px;
  border-radius:4px;border:1px solid #536471;
  background:#000;color:#e7e9ea;
  font-family:inherit;font-size:17px;outline:none;
  transition:border-color 0.2s,box-shadow 0.2s;
}
.poxy-auth-field::placeholder{color:#71717a}
.poxy-auth-field:focus{
  border-color:#f9abff;
  box-shadow:0 0 0 1px rgba(249,171,255,0.35);
}
.poxy-auth-continue{
  width:100%;max-width:300px;padding:14px 20px;margin-top:4px;
  border-radius:999px;border:1px solid rgba(255,255,255,0.14);
  background:#eff3f4;color:#0f1419;
  font-family:inherit;font-size:15px;font-weight:700;
  cursor:pointer;transition:background 0.2s,opacity 0.2s;
}
.poxy-auth-continue:not(:disabled):hover{background:#d7dbdc}
.poxy-auth-continue:disabled{opacity:0.45;cursor:not-allowed}
.poxy-auth-continue.is-primary{
  background:linear-gradient(90deg,#f9abff 0%,#9c27b0 55%,#d70357 100%);
  color:#1a0020;border:none;
  box-shadow:0 4px 24px rgba(156,39,176,0.35);
}
.poxy-auth-continue.is-primary:not(:disabled):hover{
  filter:brightness(1.06);transform:translateY(-1px);
}
.poxy-auth-mode-switch{
  margin-top:20px;padding:0;border:none;background:none;
  font-family:inherit;font-size:14px;font-weight:600;
  color:#f9abff;cursor:pointer;text-align:left;max-width:300px;
}
.poxy-auth-mode-switch:hover{text-decoration:underline}
.auth-msg,.poxy-auth-msg{
  margin-top:14px;max-width:300px;font-size:13px;min-height:18px;line-height:1.4;
}
.auth-msg.error,.poxy-auth-msg.error{color:#f4212e}
.auth-msg.success,.poxy-auth-msg.success{color:#8bc99a}
.poxy-auth-legal{
  margin-top:24px;max-width:300px;font-size:11px;line-height:1.5;color:#71717a;
}
.poxy-auth-legal a{color:#71717a;text-decoration:underline}
.poxy-auth-legal a:hover{color:#c5c5cd}
.poxy-auth-hero{
  flex:1;display:none;align-items:center;justify-content:center;
  position:relative;overflow:visible;
  background:#000;
  padding:clamp(24px,4vh,48px) clamp(56px,8vw,96px) clamp(24px,4vh,48px) clamp(16px,3vw,40px);
  box-sizing:border-box;
}
@media(min-width:900px){
  .poxy-auth-hero{display:flex;min-width:0;overflow:visible}
}
.poxy-auth-hero-logo{
  position:relative;display:flex;align-items:baseline;justify-content:center;
  flex-wrap:nowrap;
  user-select:none;pointer-events:none;
  transform:scale(1.15);
  transform-origin:center center;
  opacity:0.14;
  padding:0.08em 0.2em 0.06em 0.06em;
  max-width:100%;
  box-sizing:content-box;
  overflow:visible;
}
.poxy-auth-hero-logo .auth-hero-l,
.poxy-auth-hero-logo .auth-hero-y{
  font-family:'Hanken Grotesk',Inter,sans-serif;
  font-size:min(24vw,200px);font-weight:900;line-height:1;
  letter-spacing:-0.02em;color:transparent;
  display:inline-block;
  padding:0.04em 0.06em;
  -webkit-text-stroke:2px rgba(245,245,247,0.55);
  paint-order:stroke fill;
  text-rendering:geometricPrecision;
  -webkit-font-smoothing:antialiased;
}
.poxy-auth-hero-logo .auth-hero-y{
  letter-spacing:0;
  padding:0.04em 0.16em 0.04em 0.06em;
  margin-right:0.04em;
  overflow:visible;
}
.poxy-auth-hero-logo .auth-hero-x{
  font-size:min(28vw,240px);font-weight:900;line-height:1;
  letter-spacing:-0.04em;
  display:inline-block;
  padding:0 0.02em;
  background:linear-gradient(160deg,#f9abff 0%,#9c27b0 45%,#d70357 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 60px rgba(249,171,255,0.25));
}
.poxy-auth-hero-glow{
  position:absolute;inset:20% 10%;
  background:radial-gradient(ellipse at 50% 50%,rgba(156,39,176,0.2),transparent 65%);
  pointer-events:none;
}
.poxy-auth-panel-logo-mobile{
  display:flex;align-items:baseline;margin-bottom:28px;
}
@media(min-width:900px){.poxy-auth-panel-logo-mobile{display:none}}
.poxy-auth-panel-logo-mobile .auth-hero-l,
.poxy-auth-panel-logo-mobile .auth-hero-y{
  font-size:2rem;font-weight:900;color:#f5f5f7;
}
.poxy-auth-panel-logo-mobile .auth-hero-x{
  font-size:2.25rem;font-weight:900;
  background:linear-gradient(90deg,#f9abff,#d70357);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
