.owner-theme.auth-center-page,.customer-theme.auth-center-page{background:linear-gradient(180deg,#f8fbff 0%,#eef5fc 100%)}
.auth-center-shell{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:48px 20px;box-sizing:border-box;overflow:hidden}
.auth-center-top{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;animation:authFadeDown .5s ease both}
.auth-center-logo{width:64px;height:64px;object-fit:contain;display:block}
.auth-center-toprow{display:flex;align-items:center;gap:12px}
.auth-center-brand{display:inline-flex;align-items:center;color:var(--ink);font-weight:800;font-size:1.85rem;text-decoration:none;letter-spacing:-.02em}
.auth-center-pill{padding:6px 12px;border-radius:99px;color:var(--blue-dark);background:var(--blue-light);border:1px solid #cfe1fb;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.auth-center-shell .owner-login-card,.auth-center-shell .customer-auth-card{position:relative;z-index:1;box-shadow:0 24px 60px rgba(16,42,67,.12);border-radius:22px;animation:authCardIn .55s .05s cubic-bezier(.2,.7,.3,1) both}

.auth-center-decor{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.auth-center-decor .bi{position:absolute;color:var(--blue);opacity:.34;transition:transform .25s ease,opacity .25s ease,color .25s ease;pointer-events:auto;cursor:default}
.auth-center-decor .bi:hover{transform:scale(1.4) rotate(-8deg);opacity:.9;color:var(--blue-dark)}

/* Left column - 12 rows, top to bottom */
.auth-center-decor .decor-1{left:3%;top:3%;font-size:30px;animation:authDecorFloat 6.2s ease-in-out infinite}
.auth-center-decor .decor-2{left:9%;top:11%;font-size:22px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 5.6s .15s ease-in-out infinite}
.auth-center-decor .decor-3{left:4%;top:19%;font-size:42px;animation:authDecorFloat 7.4s .3s ease-in-out infinite}
.auth-center-decor .decor-4{left:10%;top:27%;font-size:18px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.8s .1s ease-in-out infinite}
.auth-center-decor .decor-5{left:2%;top:35%;font-size:34px;animation:authDecorFloat 8.2s .45s ease-in-out infinite}
.auth-center-decor .decor-6{left:8%;top:43%;font-size:26px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 5.9s .2s ease-in-out infinite}
.auth-center-decor .decor-7{left:5%;top:51%;font-size:46px;animation:authDecorFloat 7s .35s ease-in-out infinite}
.auth-center-decor .decor-8{left:11%;top:59%;font-size:20px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.4s .05s ease-in-out infinite}
.auth-center-decor .decor-9{left:3%;top:67%;font-size:28px;animation:authDecorFloat 8.6s .25s ease-in-out infinite}
.auth-center-decor .decor-10{left:9%;top:75%;font-size:38px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6s .4s ease-in-out infinite}
.auth-center-decor .decor-11{left:4%;top:83%;font-size:24px;animation:authDecorFloat 7.6s .15s ease-in-out infinite}
.auth-center-decor .decor-12{left:10%;top:91%;font-size:32px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 5.5s .3s ease-in-out infinite}

/* Right column - mirrored */
.auth-center-decor .decor-13{right:3%;top:3%;font-size:26px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.6s .2s ease-in-out infinite}
.auth-center-decor .decor-14{right:9%;top:11%;font-size:40px;animation:authDecorFloat 7.8s .4s ease-in-out infinite}
.auth-center-decor .decor-15{right:4%;top:19%;font-size:20px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 5.7s .1s ease-in-out infinite}
.auth-center-decor .decor-16{right:10%;top:27%;font-size:32px;animation:authDecorFloat 8.4s .3s ease-in-out infinite}
.auth-center-decor .decor-17{right:2%;top:35%;font-size:22px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.1s .5s ease-in-out infinite}
.auth-center-decor .decor-18{right:8%;top:43%;font-size:44px;animation:authDecorFloat 7.3s .05s ease-in-out infinite}
.auth-center-decor .decor-19{right:5%;top:51%;font-size:18px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 6.9s .35s ease-in-out infinite}
.auth-center-decor .decor-20{right:11%;top:59%;font-size:36px;animation:authDecorFloat 8s .2s ease-in-out infinite}
.auth-center-decor .decor-21{right:3%;top:67%;font-size:24px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 5.8s .45s ease-in-out infinite}
.auth-center-decor .decor-22{right:9%;top:75%;font-size:30px;animation:authDecorFloat 7.1s .1s ease-in-out infinite}
.auth-center-decor .decor-23{right:4%;top:83%;font-size:20px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 6.5s .25s ease-in-out infinite}
.auth-center-decor .decor-24{right:10%;top:91%;font-size:28px;animation:authDecorFloat 5.9s .4s ease-in-out infinite}

/* Left gutter (between the near-edge column and the card) */
.auth-center-decor .decor-25{left:18%;top:7%;font-size:24px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.7s .1s ease-in-out infinite}
.auth-center-decor .decor-26{left:25%;top:17%;font-size:32px;animation:authDecorFloat 7.9s .3s ease-in-out infinite}
.auth-center-decor .decor-27{left:19%;top:29%;font-size:20px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 5.4s .2s ease-in-out infinite}
.auth-center-decor .decor-28{left:27%;top:41%;font-size:36px;animation:authDecorFloat 8.5s .45s ease-in-out infinite}
.auth-center-decor .decor-29{left:17%;top:53%;font-size:22px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.3s .15s ease-in-out infinite}
.auth-center-decor .decor-30{left:26%;top:65%;font-size:28px;animation:authDecorFloat 7.2s .35s ease-in-out infinite}
.auth-center-decor .decor-31{left:18%;top:77%;font-size:34px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 8.8s .05s ease-in-out infinite}
.auth-center-decor .decor-32{left:24%;top:89%;font-size:20px;animation:authDecorFloat 6s .25s ease-in-out infinite}

/* Right gutter - mirrored */
.auth-center-decor .decor-33{right:18%;top:7%;font-size:26px;animation:authDecorFloat 7.1s .2s ease-in-out infinite}
.auth-center-decor .decor-34{right:26%;top:19%;font-size:20px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 5.8s .4s ease-in-out infinite}
.auth-center-decor .decor-35{right:19%;top:39%;font-size:34px;animation:authDecorFloat 8.3s .1s ease-in-out infinite}
.auth-center-decor .decor-36{right:27%;top:63%;font-size:24px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.6s .3s ease-in-out infinite}

/* Extra fill - top and bottom strips clear of the card */
.auth-center-decor .decor-37{left:33%;top:4%;font-size:22px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 6.4s .2s ease-in-out infinite}
.auth-center-decor .decor-38{right:33%;top:4%;font-size:26px;animation:authDecorFloat 7.5s .1s ease-in-out infinite}
.auth-center-decor .decor-39{left:14%;top:95%;font-size:20px;animation:authDecorFloat 5.9s .3s ease-in-out infinite}
.auth-center-decor .decor-40{right:14%;top:95%;font-size:24px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 7.1s .4s ease-in-out infinite}
.auth-center-decor .decor-41{left:31%;top:93%;font-size:28px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 8.1s .15s ease-in-out infinite}
.auth-center-decor .decor-42{right:31%;top:93%;font-size:22px;animation:authDecorFloat 6.8s .25s ease-in-out infinite}
.auth-center-decor .decor-43{left:6%;top:95%;font-size:26px;color:var(--yellow-dark);opacity:.4;animation:authDecorFloat 7.8s .05s ease-in-out infinite}
.auth-center-decor .decor-44{right:6%;top:4%;font-size:20px;color:var(--yellow-dark);opacity:.42;animation:authDecorFloat 6.2s .35s ease-in-out infinite}

@keyframes authDecorFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(4deg)}}
@keyframes authCardIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes authFadeDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media(max-width:1100px){
  .auth-center-decor .decor-2,.auth-center-decor .decor-4,.auth-center-decor .decor-6,.auth-center-decor .decor-8,.auth-center-decor .decor-10,.auth-center-decor .decor-12,
  .auth-center-decor .decor-13,.auth-center-decor .decor-15,.auth-center-decor .decor-17,.auth-center-decor .decor-19,.auth-center-decor .decor-21,.auth-center-decor .decor-23,
  .auth-center-decor .decor-25,.auth-center-decor .decor-26,.auth-center-decor .decor-27,.auth-center-decor .decor-28,.auth-center-decor .decor-29,.auth-center-decor .decor-30,
  .auth-center-decor .decor-31,.auth-center-decor .decor-32,.auth-center-decor .decor-33,.auth-center-decor .decor-34,.auth-center-decor .decor-35,.auth-center-decor .decor-36,
  .auth-center-decor .decor-37,.auth-center-decor .decor-38,.auth-center-decor .decor-39,.auth-center-decor .decor-40,.auth-center-decor .decor-41,.auth-center-decor .decor-42,
  .auth-center-decor .decor-43,.auth-center-decor .decor-44{display:none}
}
@media(max-width:760px){.auth-center-decor{display:none}}
@media(max-width:480px){.auth-center-shell{padding:34px 16px;gap:20px}.auth-center-brand{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){
  .auth-center-decor .bi,.auth-center-shell .owner-login-card,.auth-center-shell .customer-auth-card,.auth-center-top{animation:none}
}
