/* Decorative guidance illustration on every entry screen. It never uses student data. */
.birey-login .login-story{position:relative;isolation:isolate;overflow:hidden}
.birey-login .login-story>.birey-brand,.birey-login .login-story>.story-foot,.birey-login .login-story>div:not(.orbit):not(.guide-visual){position:relative;z-index:2}
.birey-login .login-story h1{max-width:360px}
.birey-login .login-story p{max-width:340px}
.guide-visual{position:absolute;right:19px;top:24%;width:230px;height:280px;z-index:1;pointer-events:none;border:1px solid #cce7b82e;border-radius:28px;background:linear-gradient(145deg,#769e5925,#162e26aa 65%,#ff8a3b18);box-shadow:inset 0 1px 0 #ffffff18,0 24px 65px #10261b44;overflow:hidden;animation:guide-appear .9s ease-out both}
.guide-visual:before,.guide-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid #bfe3a529;left:50%;top:47%;transform:translate(-50%,-50%);width:170px;height:170px}
.guide-visual:after{width:218px;height:218px;border-color:#bfe3a514}
.guide-aura{position:absolute;left:50%;top:45%;width:170px;height:170px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#add88326,transparent 69%);animation:guide-breathe 5s ease-in-out infinite}
.guide-paths{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.guide-paths path{stroke:#d0eab896;stroke-width:1.5;stroke-dasharray:4 7;fill:none;animation:guide-flow 10s linear infinite}
.guide-core{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:100px;height:100px;border-radius:28px;display:grid;place-items:center;color:#ecf8dd;background:linear-gradient(145deg,#6da34c,#304f36);border:1px solid #e9f5df69;box-shadow:0 0 0 10px #c4e99b10,0 13px 30px #081b1680;animation:guide-float 5.5s ease-in-out infinite}
.guide-core svg{width:66px;height:66px;filter:drop-shadow(0 3px 4px #17322160)}
.guide-spark{position:absolute;right:-10px;top:-13px;width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:#ff802f;color:white;box-shadow:0 0 19px #ff8a3b9c;font-size:16px;animation:guide-spark 3s ease-in-out infinite}
.guide-chip{position:absolute;display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #d5edc882;border-radius:10px;background:#f8fff2;color:#344b30;font-size:10px;font-weight:750;letter-spacing:.1px;box-shadow:0 8px 18px #081b164d;white-space:nowrap;animation:guide-chip-drift 5s ease-in-out infinite}
.guide-chip i{font-style:normal;color:#ee6a20;font-size:9px}
.guide-chip-one{left:10px;top:27px;animation-delay:-.5s}
.guide-chip-two{right:10px;top:36px;animation-delay:-2.1s}
.guide-chip-three{right:8px;bottom:39px;animation-delay:-3.2s}
.guide-visual-foot{position:absolute;left:13px;bottom:15px;display:flex;align-items:center;gap:7px;color:#c2dbad;font-size:8px;letter-spacing:1.15px;font-weight:750}
.guide-visual-pulse{height:6px;width:6px;border-radius:50%;background:#a9d77e;box-shadow:0 0 0 4px #a9d77e23,0 0 12px #b4e28c}
.birey-login .login-form-wrap{background:radial-gradient(circle at 87% 12%,#edf6e594,transparent 35%),#fafbf8}
.birey-login .login-form{animation:login-rise .6s ease-out both}
.birey-login .entry-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease;animation:login-rise .55s ease-out both}
.birey-login .entry-card:nth-child(2){animation-delay:.07s}.birey-login .entry-card:nth-child(3){animation-delay:.14s}.birey-login .entry-card:nth-child(4){animation-delay:.21s}
.birey-login .entry-card:hover,.birey-login .entry-card:focus-visible{transform:translateY(-5px);box-shadow:0 16px 30px #1a3d271c}
.birey-login .entry-icon{transition:transform .24s ease,background .24s ease}
.birey-login .entry-card:hover .entry-icon,.birey-login .entry-card:focus-visible .entry-icon{transform:rotate(-8deg) scale(1.09);background:#e0f0d6}
.birey-login .admin-entry{transition:transform .24s ease,box-shadow .24s ease}
.birey-login .admin-entry:hover,.birey-login .admin-entry:focus-visible{transform:translateX(3px);box-shadow:0 10px 22px #1a3d2716}
@keyframes guide-appear{from{opacity:0;transform:translateY(17px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes guide-breathe{50%{opacity:.6;transform:translate(-50%,-50%) scale(1.17)}}
@keyframes guide-flow{to{stroke-dashoffset:-88}}
@keyframes guide-float{50%{transform:translate(-50%,-54%)}}
@keyframes guide-spark{50%{transform:rotate(25deg) scale(1.18);box-shadow:0 0 26px #ff9a48}}
@keyframes guide-chip-drift{50%{transform:translateY(-5px)}}
@keyframes login-rise{from{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px) and (min-width:851px){.guide-visual{width:190px;height:230px;top:26%;right:9px;opacity:.84}.birey-login .login-story h1{max-width:310px}.birey-login .login-story p{max-width:300px}.guide-chip{font-size:9px}.guide-visual-foot{font-size:7px}}
@media(max-width:850px){.guide-visual{position:relative;top:auto;right:auto;width:min(100%,420px);height:185px;margin-top:22px}.guide-visual:before{width:160px;height:160px}.guide-visual:after{width:205px;height:205px}.guide-core{width:82px;height:82px}.guide-core svg{width:56px;height:56px}.guide-chip-three{bottom:31px}.guide-visual-foot{bottom:12px}.birey-login .login-story h1,.birey-login .login-story p{max-width:440px}.birey-login .story-foot{padding-top:22px}}
@media(max-width:520px){.guide-visual{height:166px}.guide-core{top:49%}.guide-chip{font-size:9px;padding:5px 7px}.guide-chip-one{left:9px;top:17px}.guide-chip-two{right:8px;top:20px}.guide-chip-three{right:9px;bottom:29px}.guide-visual-foot{font-size:7px}}
@media(prefers-reduced-motion:reduce){.guide-visual,.guide-aura,.guide-paths path,.guide-core,.guide-spark,.guide-chip,.birey-login .login-form,.birey-login .entry-card{animation:none!important}.birey-login .entry-card,.birey-login .entry-icon,.birey-login .admin-entry{transition:none!important}.birey-login .entry-card:hover,.birey-login .entry-card:focus-visible,.birey-login .admin-entry:hover,.birey-login .admin-entry:focus-visible,.birey-login .entry-card:hover .entry-icon,.birey-login .entry-card:focus-visible .entry-icon{transform:none}}
