:root{--login-page-bg: #e9f4df;--login-panel-bg: #ffffff;--login-showcase-bg: #f2f7ee;--login-text: #13251a;--login-muted: #6b766e;--login-green: #17633c;--login-green-deep: #0d442a;--login-green-soft: #e6f4dd;--login-border: #dfe9dc;--login-input-bg: #fbfff8;--login-shadow: 0 30px 90px rgba(21, 76, 43, .18);--login-button-shadow: 0 14px 28px rgba(23, 99, 60, .22)}.login-page-bg{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(#e9f4df42,#e9f4df42),url(/images/backgrounds/poultry-login-bg.jpg) center / cover no-repeat,var(--login-page-bg)}.login-page-bg:before{content:"";position:absolute;pointer-events:none}.login-page-bg:before{top:-14rem;left:-10rem;width:34rem;height:34rem;border-radius:9rem;background:#e9f4df38;transform:rotate(18deg)}.login-wrapper{position:relative;z-index:1;display:grid;min-height:100vh;place-items:center;padding:clamp(1.25rem,4vw,3rem)}.login-shell{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);width:min(100%,1080px);min-height:min(720px,calc(100vh - 6rem));overflow:hidden;border:1px solid rgba(255,255,255,.76);border-radius:28px;background:#fffffff0;box-shadow:var(--login-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:login-fade-up .9s cubic-bezier(.19,1,.22,1)}.login-card{display:flex;flex-direction:column;justify-content:center;width:min(100%,380px);margin:0 auto;padding:clamp(2rem,5vw,3.5rem) clamp(1.5rem,4vw,2.5rem)}.login-card-header{margin-bottom:clamp(1.4rem,3vw,2rem)}.login-logo{width:3.8rem;height:3.8rem;margin:0 auto .9rem;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(23,99,60,.14))}.login-eyebrow{margin:0 0 .65rem;color:var(--login-green);font-size:.72rem;font-weight:800;letter-spacing:.16em}.login-title{margin:0;color:var(--login-text);font-size:clamp(2rem,4vw,2.65rem);line-height:1.04}.login-subtitle{max-width:20rem;margin:.72rem auto 0;color:var(--login-muted);font-size:.96rem;line-height:1.5}.login-form{display:grid;gap:1rem}.login-field{display:grid;gap:.45rem}.login-label{margin:0;color:var(--login-text);font-size:.85rem;font-weight:800}.login-input-wrap{position:relative}.login-input-icon{position:absolute;top:50%;left:1rem;z-index:2;display:grid;width:1rem;height:1rem;place-items:center;color:#17633c9e;pointer-events:none;transform:translateY(-50%)}.login-input-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.custom-input{min-height:3.1rem;padding:.82rem 1rem .82rem 2.75rem;border:1px solid var(--login-border);border-radius:10px;background:var(--login-input-bg);color:var(--login-text);font-size:.95rem;box-shadow:0 8px 20px #154c2b0d;transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}.custom-input::placeholder{color:#8a968d}.custom-input:focus{border-color:#78bd76;background:#fff;box-shadow:0 0 0 .22rem #78bd762e,0 12px 24px #154c2b1a;transform:translateY(-1px)}.login-actions{margin-top:1.15rem}.go-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:3.18rem;padding:.88rem 2rem;border:0;border-radius:10px;color:#fff;font-size:1rem;font-weight:800;background:linear-gradient(180deg,#21804e 0%,var(--login-green-deep) 100%);box-shadow:var(--login-button-shadow);cursor:pointer;transition:transform .22s ease,filter .22s ease,box-shadow .22s ease}.go-btn:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 18px 34px #17633c47}.go-btn:active:not(:disabled){transform:translateY(1px) scale(.99);box-shadow:inset 0 3px 8px #03140e3d,0 7px 16px #17633c24}.go-btn:focus-visible{outline:3px solid rgba(33,128,78,.24);outline-offset:3px}.go-btn:disabled{cursor:wait;opacity:.9}.go-btn.is-loading:before{content:"";width:15px;height:15px;margin-right:10px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:login-button-spin .7s linear infinite}.login-showcase{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-self:stretch;min-height:0;overflow:hidden;margin:1rem;border:0;border-radius:22px;background:var(--login-showcase-bg);box-shadow:none}.login-showcase-image{position:absolute;inset:0;z-index:0;border-radius:inherit;background-image:url(/images/backgrounds/smartfeather-login-illustration.jpg);background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.01);animation:login-bg-drift 26s ease-in-out infinite alternate}.login-showcase:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#f7fcf305,#f7fcf30a 34%,#062919d1),radial-gradient(circle at 74% 16%,rgba(255,255,226,.22),transparent 28%)}.login-showcase:after{content:"";position:absolute;inset:0;z-index:4;border:2px solid rgba(255,255,255,.9);border-radius:inherit;pointer-events:none}.login-status-card{position:absolute;z-index:2;width:min(15.5rem,42%);padding:.95rem 1rem;border:1px solid rgba(255,255,255,.78);border-radius:17px;background:#ffffffdb;color:var(--login-text);box-shadow:0 16px 34px #05271824;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.login-status-card span{display:block;color:var(--login-green);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.login-status-card strong{display:block;margin-top:.35rem;font-size:.9rem;line-height:1.25}.login-status-card-primary{top:clamp(1.1rem,3vw,2rem);left:clamp(1.15rem,3vw,2.25rem);transform:rotate(-4deg)}.login-status-card-secondary{top:clamp(5.7rem,9vw,7rem);right:clamp(1.05rem,3vw,2rem);transform:rotate(3deg)}.login-showcase-copy{position:relative;z-index:2;max-width:30rem;padding:clamp(2rem,5vw,3rem);color:#fff}.login-showcase-copy h2{margin:0;font-size:clamp(2rem,4vw,3.15rem);line-height:1.02}.login-showcase-copy p{max-width:24rem;margin:.9rem 0 0;color:#ffffffd1;font-size:1rem;line-height:1.55}.login-error-modal-backdrop{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:20px;background:#0000006b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.login-error-modal-backdrop.show{display:flex}.login-error-modal{width:min(100%,360px);border-radius:28px;padding:28px 24px 24px;text-align:center;background:#fff;color:#123322;box-shadow:0 24px 58px #00000047;animation:login-modal-pop .22s ease}.login-error-icon{display:grid;width:52px;height:52px;margin:0 auto 14px;place-items:center;border-radius:50%;background:#d93f32;color:#fff;font-size:1.9rem;font-weight:800;line-height:1}.login-error-modal h2{margin:0 0 8px;font-size:1.55rem;font-weight:800}.login-error-modal p{margin:0;color:#526156;line-height:1.5}.login-error-btn{min-width:110px;height:42px;margin-top:22px;border:0;border-radius:999px;background:linear-gradient(180deg,var(--login-green),var(--login-green-deep));color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:transform .2s ease,filter .2s ease}.login-error-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}@keyframes login-fade-up{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes login-modal-pop{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes login-button-spin{to{transform:rotate(360deg)}}@keyframes login-bg-drift{0%{transform:scale(1.02) translate3d(-.4%,-.25%,0)}to{transform:scale(1.055) translate3d(.4%,.25%,0)}}@keyframes login-illustration-float{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@media(max-width:992px){.login-shell{grid-template-columns:1fr;min-height:auto}.login-card{padding-block:2.25rem}.login-showcase{min-height:420px;margin:0 1rem 1rem}.login-status-card{width:min(15rem,44%)}}@media(max-width:640px){.login-wrapper{padding:.85rem}.login-shell{border-radius:22px}.login-card{width:100%;padding:1.6rem 1.15rem 1.9rem}.login-title{font-size:2rem}.login-showcase{min-height:340px;margin:0 .75rem .75rem;border-radius:18px}.login-status-card{width:min(12.75rem,48%);padding:.75rem .8rem}.login-status-card strong{font-size:.78rem}.login-status-card-primary{top:1rem;left:1rem}.login-status-card-secondary{top:4.7rem;right:.9rem}.login-showcase-copy{padding:1.5rem}.login-showcase:after{bottom:45%}}
