/* Decorative only: the login form and all authentication styles remain unchanged. */
.login-with-cubes .login-shell{min-height:calc(100vh - 42px)}
.login-with-cubes .login-panel-brand{gap:30px;overflow:hidden}
.login-brand-story{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;min-height:clamp(360px,26vw,480px);margin:24px 0;padding:24px 0 52px}
.login-with-cubes .brand-copy{position:relative;z-index:1;min-width:0;max-width:580px}
.login-with-cubes .brand-copy h1{font-size:clamp(36px,2.8vw,52px);line-height:1.13;letter-spacing:-.035em}
.login-with-cubes .brand-copy p{font-size:16px;line-height:1.75;margin-top:22px;color:#10231a}
.login-with-cubes .brand-copy .eyebrow{font-size:11px;letter-spacing:.05em;color:#0f172a}
/* Fade the completed 3D scene once: translucent individual faces would stack up. */
.login-cubes{--unit:clamp(34px,3.2vw,60px);position:absolute;z-index:2;inset:-20px -2vw -10px;width:auto;min-width:0;padding-bottom:42px;pointer-events:none}
.login-cubes-stage{position:absolute;inset:0 0 42px;width:100%;height:auto;opacity:.16;pointer-events:none}
.login-cubes-stage *{pointer-events:none}
.login-cubes-halo{position:absolute;inset:0 -10%;border-radius:50%;background:radial-gradient(ellipse,rgba(72,176,127,.16) 0%,rgba(122,206,164,.07) 44%,transparent 70%)}
.login-cubes-shadow{position:absolute;left:30%;right:5%;bottom:3%;height:25px;border-radius:50%;background:radial-gradient(ellipse,rgba(26,93,63,.19),transparent 70%)}
.login-cubes-camera{position:absolute;inset:0;perspective:950px;perspective-origin:62% 50%}
.login-cubes-assembly{position:absolute;left:62%;top:50%;width:0;height:0;transform-style:preserve-3d;transform:rotateX(-22deg) rotateY(34deg) rotateZ(0deg);animation:login-cubes-turn 38s linear infinite paused}
.login-cube{position:absolute;left:calc(var(--unit)*-.5);top:calc(var(--unit)*-.5);width:var(--unit);height:var(--unit);transform-style:preserve-3d;transform:translate3d(calc(var(--x)*var(--unit)*1.24),calc(var(--y)*var(--unit)*1.24),calc(var(--z)*var(--unit)*1.24));animation:login-cubes-breathe 14s ease-in-out infinite paused}
.login-cube-face{position:absolute;inset:0;display:grid;place-items:center;border:1px solid rgba(233,255,245,.58);border-radius:3px;backface-visibility:hidden;background:linear-gradient(145deg,#7bd3aa,#319f73);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);font-size:calc(var(--unit)*.48);font-weight:650;line-height:1;color:rgba(8,53,34,.30);text-shadow:0 1px 0 rgba(255,255,255,.12);user-select:none}
.login-cube-face.front{transform:translateZ(calc(var(--unit)*.5))}
.login-cube-face.back{transform:rotateY(180deg) translateZ(calc(var(--unit)*.5));background:linear-gradient(145deg,#58bb90,#23845d)}
.login-cube-face.left{transform:rotateY(-90deg) translateZ(calc(var(--unit)*.5));background:linear-gradient(145deg,#42ad7c,#17714f)}
.login-cube-face.right{transform:rotateY(90deg) translateZ(calc(var(--unit)*.5));background:linear-gradient(145deg,#359d73,#146345)}
.login-cube-face.top{transform:rotateX(90deg) translateZ(calc(var(--unit)*.5));background:linear-gradient(145deg,#d5f4e4,#92d7b6)}
.login-cube-face.bottom{transform:rotateX(-90deg) translateZ(calc(var(--unit)*.5));background:#1f7955}
.login-cubes[data-motion="running"] .login-cubes-assembly,.login-cubes[data-motion="running"] .login-cube{animation-play-state:running}
.login-cube-shift{position:absolute;inset:0;transform-style:preserve-3d;transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg);transition:transform .85s cubic-bezier(.22,1,.36,1)}
.login-cubes[data-motion="running"][data-scatter="true"] .login-cube-shift{transform:translate3d(calc((var(--scatter-x) - var(--pointer-x,0)*var(--follow))*var(--unit)),calc((var(--scatter-y) - var(--pointer-y,0)*var(--follow))*var(--unit)),calc(var(--scatter-z)*var(--unit))) rotateX(var(--turn-x)) rotateY(var(--turn-y)) rotateZ(var(--turn-z));transition-duration:.55s}
.login-cubes[data-scatter="true"] .login-cubes-assembly,.login-cubes[data-scatter="true"] .login-cube{animation-play-state:paused}
.login-cubes[data-motion="paused"] .login-cube-shift{transform:none;transition:none}
.login-motion-toggle{position:absolute;bottom:0;left:62%;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 10px;border:1px solid #c9dfd2;border-radius:8px;background:rgba(247,252,249,.92);color:#476a59;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer;pointer-events:auto}
.login-motion-toggle:hover{background:rgba(255,255,255,.65);border-color:#c9dfd2}
.login-motion-toggle:focus-visible{outline:3px solid #21865a;outline-offset:3px}
.login-motion-toggle[hidden],.login-motion-toggle .login-motion-play,.login-motion-toggle[aria-pressed="true"] .login-motion-pause{display:none}
.login-motion-toggle[aria-pressed="true"] .login-motion-play{display:block}
@keyframes login-cubes-turn{from{transform:rotateX(-22deg) rotateY(34deg) rotateZ(0deg)}to{transform:rotateX(-22deg) rotateY(394deg) rotateZ(0deg)}}
@keyframes login-cubes-breathe{0%,18%,100%{transform:translate3d(calc(var(--x)*var(--unit)*1.24),calc(var(--y)*var(--unit)*1.24),calc(var(--z)*var(--unit)*1.24))}48%,64%{transform:translate3d(calc(var(--x)*var(--unit)*1.42),calc(var(--y)*var(--unit)*1.42),calc(var(--z)*var(--unit)*1.42))}}
@media(min-width:901px) and (max-width:1199px){.login-with-cubes .login-panel-brand{padding:32px 3.5vw;gap:20px}.login-brand-story{min-height:360px;margin:0}.login-cubes{--unit:32px;inset:0 -12px}.login-with-cubes .brand-copy h1{font-size:32px}.login-with-cubes .brand-copy p{font-size:15px}.login-with-cubes .brand-highlights{gap:8px}.login-with-cubes .highlight-card{padding:12px;border-radius:12px}.login-with-cubes .highlight-card span{font-size:12px}}
@media(max-width:900px){.login-cubes{display:none}.login-brand-story{display:block;min-height:0;margin:0;padding:0}.login-with-cubes .brand-copy h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){.login-cubes .login-cubes-assembly,.login-cubes .login-cube{animation:none!important}.login-cubes .login-cube-shift{transform:none!important;transition:none!important}.login-motion-toggle{display:none}}
