html,body,#root{height:100%;width:100%}body{margin:0;padding:0;background:transparent;color:inherit;font-family:inherit}*,*:before,*:after{box-sizing:border-box}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}:root{--login-primary: #5cc8ff;--login-secondary: #7b61ff;--login-background: #071826;--login-background-alt: #020814;--login-card-background: rgba(12, 24, 36, .92);--login-text: #e8f1f8;--login-logo-image: url(/assets/logo-BDV-FstH.png)}.login-container{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(1200px 600px at 15% 10%,color-mix(in srgb,var(--login-primary) 18%,transparent) 0%,transparent 60%),radial-gradient(800px 400px at 85% 20%,color-mix(in srgb,var(--login-secondary) 16%,transparent) 0%,transparent 60%),linear-gradient(135deg,var(--login-background),var(--login-background-alt))}.login-container:before{content:"";position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;background-image:var(--login-logo-image);background-repeat:no-repeat;background-position:center;background-size:min(90vw,980px);opacity:.06;transform:rotate(-10deg);filter:blur(.8px);pointer-events:none;z-index:0}.login-container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(900px 420px at 50% 0%,rgba(255,255,255,.1),transparent 60%),linear-gradient(180deg,#0000,#00000059);pointer-events:none;z-index:0}.login-form{position:relative;z-index:1;width:min(420px,92vw);padding:2.2rem 2rem;border-radius:16px;text-align:center;background:var(--login-card-background);border:1px solid rgba(255,255,255,.1);box-shadow:0 22px 65px #0000008c,0 0 0 1px #ffffff0a inset;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.login-form:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:17px;padding:1px;background:linear-gradient(90deg,var(--login-primary),var(--login-secondary));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.55}.logo{width:112px;height:112px;background-image:var(--login-logo-image);background-repeat:no-repeat;background-position:center;background-size:contain;margin:0 auto .75rem;filter:drop-shadow(0 10px 22px rgba(0,0,0,.35))}.login-form h1{margin:0 0 1.2rem;font-weight:900;letter-spacing:-.02em;color:var(--login-text)}.login-form input{width:100%;padding:.75rem .85rem;margin-bottom:.9rem;border-radius:10px;font-size:1rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.18);color:#ffffffeb;outline:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.login-form input::placeholder{color:#ffffff8c}.login-form input:focus{border-color:var(--login-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--login-primary) 22%,transparent);transform:translateY(-1px)}.login-form button{width:100%;padding:.78rem;border:none;border-radius:14px;font-weight:900;cursor:pointer;font-size:1rem;margin-bottom:1rem;color:#06121a;background:linear-gradient(90deg,var(--login-primary),var(--login-secondary));box-shadow:0 14px 30px #00000059;transition:transform .14s ease,filter .14s ease,box-shadow .14s ease}.login-form button:hover{transform:translateY(-1px);filter:saturate(1.05);box-shadow:0 18px 38px #00000073}.login-form button:active{transform:translateY(0)}.ms-login{width:170px;cursor:pointer;opacity:.95;transition:transform .14s ease,opacity .14s ease}.ms-login:hover{transform:translateY(-1px);opacity:1}.error-text{color:#ff6b6b;font-size:.9rem;min-height:1.1rem;margin:0 0 .75rem}.login-environment-label{display:inline-block;margin:0 auto .85rem;padding:.35rem .75rem;border-radius:999px;background:#fff4bf;color:#5f4300;border:1px solid #e5c756;font-size:.78rem;font-weight:900;letter-spacing:.08em}.login-form [aria-label=version]{background:#ffffff0f!important;border:1px solid rgba(255,255,255,.1);color:#ffffffb8!important;border-radius:8px!important}.change-password-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f0f0f0}.change-password-form{width:400px;padding:20px;border:1px solid #ccc;border-radius:8px;background-color:#fff;box-shadow:0 4px 8px #0000001a}.change-password-form h2{text-align:center;margin-bottom:20px}.change-password-form label{display:block;margin-bottom:5px}.change-password-form input{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ccc;border-radius:4px}.change-password-form button{width:100%;padding:10px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer}.change-password-form button:hover{background-color:#45a049}.error{color:red;font-size:14px;margin-bottom:10px}.tour-highlight{position:relative;z-index:1400!important;outline:2px solid rgba(92,200,255,.9);outline-offset:3px;border-radius:10px;box-shadow:0 0 0 6px #5cc8ff33,0 0 20px #5cc8ff59;animation:tourPulse 1.6s ease-in-out infinite}@keyframes tourPulse{0%{box-shadow:0 0 0 6px #5cc8ff2e,0 0 16px #5cc8ff40}50%{box-shadow:0 0 0 10px #5cc8ff47,0 0 24px #5cc8ff66}to{box-shadow:0 0 0 6px #5cc8ff2e,0 0 16px #5cc8ff40}}@keyframes tourArrowPulse{0%{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translate(-50%) scale(1)}50%{filter:drop-shadow(0 0 14px rgba(92,200,255,.85));transform:translate(-50%) scale(1.12)}to{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translate(-50%) scale(1)}}@keyframes tourNudgeDown{0%{transform:translateY(0)}50%{transform:translateY(6px)}to{transform:translateY(0)}}@keyframes tourNudgeUp{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:translateY(0)}}@keyframes tourArrowPulseX{0%{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translate(-50%) scale(1)}50%{filter:drop-shadow(0 0 14px rgba(92,200,255,.85));transform:translate(-50%) scale(1.12)}to{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translate(-50%) scale(1)}}@keyframes tourArrowPulseY{0%{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translateY(-50%) scale(1)}50%{filter:drop-shadow(0 0 14px rgba(92,200,255,.85));transform:translateY(-50%) scale(1.12)}to{filter:drop-shadow(0 0 6px rgba(92,200,255,.4));transform:translateY(-50%) scale(1)}}
