/* (c) 2026 Jusbryn Services Corp. All rights reserved. */
.login-bg{min-height:100vh;width:100vw;display:flex;align-items:center;justify-content:flex-end;background:var(--bg);padding:1.5rem;position:relative;overflow:hidden}.login-card{position:relative;z-index:10;margin-right:8%;width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:2.2rem 2rem 1.8rem;box-shadow:var(--shadow-lg),0 0 0 1px rgba(255,255,255,.03);animation:.42s cubic-bezier(.22,1,.36,1) cardIn}@media (max-width:900px){.login-bg{justify-content:center}.login-card{margin-right:0;max-width:92vw}}@keyframes cardIn{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-card::before{content:'';position:absolute;top:0;left:2rem;right:2rem;height:2px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,transparent,var(--brand) 25%,var(--brand-hover) 75%,transparent)}.card-corner{position:absolute;bottom:-1px;right:-1px;width:52px;height:52px;border-bottom:2px solid var(--brand-border);border-right:2px solid var(--brand-border);border-radius:0 0 var(--radius-xl) 0;pointer-events:none}.login-logo{display:flex;align-items:center;gap:.85rem;margin-bottom:1.75rem;padding-bottom:1.4rem;border-bottom:1px solid var(--border-soft)}.login-logo img{width:40px;filter:drop-shadow(0 2px 10px rgba(249,115,22,.4));flex-shrink:0}.logo-title{font-size:1.12rem;font-weight:800;color:var(--text);letter-spacing:-.01em;line-height:1.2}.logo-title span{color:var(--brand)}.logo-sub{font-size:.62rem;color:var(--muted);margin-top:.14rem;letter-spacing:.02em;text-transform:uppercase}.login-error{background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);color:var(--danger);border-radius:var(--radius);padding:.62rem .95rem;font-size:.8rem;font-weight:600;margin-bottom:1rem;animation:.32s shake}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}.field-group{margin-bottom:1rem}.field-group label{display:block;font-size:.76rem;font-weight:600;color:var(--text-sec);margin-bottom:.38rem;letter-spacing:.02em}.field-group input,.field-group select{width:100%;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);padding:.68rem .9rem;color:var(--text);font-size:.88rem;outline:0;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);font-family:inherit}.field-group input:focus,.field-group select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);background:var(--surface)}.field-group input::placeholder{color:var(--muted)}.field-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235C6785' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding-right:2rem}.pw-wrap{position:relative}.pw-wrap input{padding-right:2.6rem}.toggle-pw{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:0 0;border:none;cursor:pointer;font-size:.95rem;opacity:.5;padding:.22rem .4rem;border-radius:5px;transition:opacity var(--transition);line-height:1}.toggle-pw:hover{opacity:1}.btn-login{width:100%;padding:.75rem;background:linear-gradient(135deg,var(--brand) 0,var(--brand-hover) 100%);border:none;border-radius:var(--radius-lg);color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;margin-top:.4rem;transition:all var(--transition);letter-spacing:.02em;box-shadow:0 4px 18px rgba(249,115,22,.32);font-family:inherit}.btn-login:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(249,115,22,.45)}.btn-login:active{transform:scale(.98)}.btn-login:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-footer{text-align:center;font-size:.68rem;color:var(--muted);margin-top:1.35rem;padding-top:1.1rem;border-top:1px solid var(--border-soft)}