:root{font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.4;font-weight:400;color:#1f3146}*{box-sizing:border-box}body{margin:0}.secure-screen{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(170deg,#ecf4ff,#dce9fb 45%,#d6e3f6);overflow:hidden;isolation:isolate}.preview-banner{position:absolute;top:0;left:0;right:0;padding:.55rem .9rem;text-align:center;font-size:.86rem;font-weight:600;color:#30567c;background:#e5f1fff2;border-bottom:1px solid rgba(114,153,196,.45);z-index:2}.preview-banner-link{color:#214d7a;font-weight:700}.preview-banner-link:hover{color:#153a63}.ambient{position:absolute;border-radius:999px;filter:blur(80px);opacity:.45;z-index:-1;animation:ambientPulse 10s ease-in-out infinite}.ambient-left{width:24rem;height:24rem;left:-8rem;top:-8rem;background:radial-gradient(circle,#82aeff80,#82aeff00 70%)}.ambient-right{width:22rem;height:22rem;right:-7rem;bottom:-8rem;background:radial-gradient(circle,#7cc6dc61,#7cc6dc00 72%);animation-delay:1.8s}.card{width:min(100%,32rem);position:relative;padding:2rem;border-radius:20px;background:linear-gradient(135deg,#ffffffc2,#fff9);border:1px solid rgba(255,255,255,.6);box-shadow:0 24px 60px #203d6033;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.environment-badge{position:absolute;top:.75rem;right:.75rem;z-index:2;padding:.18rem .45rem;border-radius:999px;border:1px solid rgba(82,114,152,.45);background:#eef5ffeb;color:#35567a;font-size:.68rem;font-weight:700;letter-spacing:.04em}.card-shimmer{position:absolute;inset:-110% auto auto -130%;width:55%;height:320%;transform:rotate(21deg);background:linear-gradient(90deg,#fff0,#ffffff52,#fff0);animation:shimmerSweep 7s ease-in-out infinite;pointer-events:none}.card-header,.card-content{position:relative;z-index:1}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.1em;font-size:.73rem;color:#4d6990;font-weight:700}h1{margin:.3rem 0 0;font-size:1.7rem;color:#163253}.subtitle{margin:.55rem 0 0;color:#4f6888;font-size:.97rem}.card-content{margin-top:1.3rem}.auth-form{display:grid;gap:.65rem}.auth-form-secondary{margin-top:1rem}label{font-size:.88rem;font-weight:600;color:#2a4465}input{width:100%;border:1px solid rgba(64,95,137,.3);border-radius:12px;background:#ffffffd9;color:#123151;padding:.65rem .78rem;font-size:.97rem;transition:border-color .14s ease,box-shadow .14s ease}input:focus-visible,button:focus-visible{outline:none;border-color:#1f6fd3;box-shadow:0 0 0 3px #1f6fd333}.primary-button,.manual-button{border:1px solid transparent;border-radius:12px;padding:.68rem .9rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.primary-button{margin-top:.15rem;background:linear-gradient(160deg,#2d78d8,#255fbe);color:#f8fbff}.primary-button:hover:not(:disabled){background:linear-gradient(160deg,#307fde,#2557ac)}.primary-button:disabled{opacity:.72;cursor:default}.manual-saml-row{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem}.manual-saml-row span{color:#587193;font-size:.87rem}.manual-button{background:#ffffffd1;border-color:#385b8540;color:#1c487b}.manual-button:hover{background:#fffffff2}.inline-message{min-height:1.2rem;margin-top:.9rem;color:#365373;font-size:.86rem}.completion-screen .card{width:min(100%,36rem)}.status-list{margin:0;padding:0;list-style:none;display:grid;gap:.65rem}.status-item{display:flex;align-items:center;gap:.6rem;border-radius:12px;padding:.65rem .75rem;color:#315172;background:#ffffff73;border:1px solid rgba(95,126,162,.2)}.status-dot{width:.65rem;height:.65rem;border-radius:50%;background:#9ab4d4;box-shadow:0 0 0 4px #9ab4d433}.status-item-complete .status-dot{background:#1f6fd3;box-shadow:0 0 0 4px #1f6fd333}.status-item-active{border-color:#1f6fd359;background:#ffffffbf}.status-item-active .status-dot{background:#1f6fd3;animation:statusPulse 1.7s ease-in-out infinite}.status-item-pending{opacity:.88}.status-message{border-radius:14px;border:1px solid rgba(188,78,95,.25);background:#fff6f7c2;padding:1rem}.status-message h2{margin:0;font-size:1.1rem;color:#4a1f2e}.status-message p{margin:.55rem 0 .9rem;color:#694557}@keyframes shimmerSweep{0%{transform:translate(-20%) rotate(21deg);opacity:0}30%{opacity:.7}60%{opacity:.55}to{transform:translate(320%) rotate(21deg);opacity:0}}@keyframes ambientPulse{0%,to{transform:scale(1);opacity:.42}50%{transform:scale(1.08);opacity:.56}}@keyframes statusPulse{0%,to{box-shadow:0 0 #1f6fd35c}50%{box-shadow:0 0 0 9px #1f6fd300}}.link-button{border:0;padding:0;background:transparent;color:#1f5fa8;font:inherit;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:.16em}.link-button:hover{color:#153f73}.forgot-password-link{justify-self:start;margin-top:.25rem;font-size:.88rem}.reset-password-panel h2{margin:0;color:#163253;font-size:1.18rem}.reset-password-panel p{margin:.45rem 0 1rem;color:#4f6888;font-size:.92rem}.reset-password-message{min-height:auto;border-radius:12px;padding:.72rem .8rem}.reset-password-message-success{border:1px solid rgba(51,126,88,.24);background:#effbf5c7;color:#245d41}.reset-password-message-error{border:1px solid rgba(188,78,95,.25);background:#fff6f7c2;color:#694557}.back-to-sign-in-button{margin-top:1rem}
