.signin-page{flex:1 1;display:flex;flex-direction:column;min-height:100vh;width:100%}.signin-page,.signin-page *{box-sizing:border-box}.signin-page *{margin:0;padding:0}body:has(.signin-page){font-family:var(--body);font-size:18px;line-height:1.6;font-weight:300;background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;background-image:radial-gradient(ellipse 100% 60% at 50% -5%,rgba(91,155,213,.13) 0,transparent 65%),repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(91,155,213,.03) 0,rgba(91,155,213,.03) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(91,155,213,.03) 0,rgba(91,155,213,.03) 40px)}.signin-page .top-bar{padding:16px 32px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(91,155,213,.06),transparent);display:flex;align-items:center;justify-content:space-between}.signin-page .bas-wordmark{border-left:2px solid var(--accent-gold);padding-left:12px}.signin-page .bas-name{letter-spacing:.22em}.signin-page .bas-name,.signin-page .bas-tagline{font-family:var(--mono);font-size:16px;text-transform:uppercase;color:var(--accent-gold)}.signin-page .bas-tagline{letter-spacing:.18em}.signin-page .top-bar-clock{font-family:var(--mono);font-size:16px;color:var(--accent);letter-spacing:.15em;text-transform:uppercase}.signin-page .main{flex:1 1;display:flex;align-items:center;justify-content:center;padding:40px 24px}.signin-page .signin-wrap{width:100%;max-width:613px;display:flex;flex-direction:column;align-items:stretch}.signin-page .logo-header{text-align:center;margin-bottom:32px}.signin-page .logo-icon{font-size:36px;margin-bottom:10px;display:block;animation:signin-float 4s ease-in-out infinite}@keyframes signin-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.signin-page .logo-title{font-family:var(--display);font-size:28px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--text);margin-bottom:4px}.signin-page .logo-title span{color:var(--accent)}.signin-page .logo-sub{font-family:var(--mono);font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.signin-page .logo-divider{width:240px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);margin:18px auto 0}.signin-page .panel{background:var(--card);border:1px solid var(--border);border-top:3px solid var(--accent);padding:32px 36px}.signin-page .panel-title{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text);margin-bottom:24px}.signin-page .panel-title span{color:var(--accent)}.signin-page .panel-gold{border-top-color:var(--accent-gold)}.signin-page .panel-title-gold,.signin-page .panel-title-gold span{color:var(--accent-gold)}.signin-page .field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.signin-page .signin-wrap .field>.field-label,.signin-page .signin-wrap .field>label.field-label{font-family:var(--mono);font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:var(--text);display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.signin-page .signin-wrap .field-label .btn-link{font-size:16px;letter-spacing:.12em;flex-shrink:0;margin-left:12px}.signin-page .field-label{font-family:var(--mono);font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:var(--text);display:flex;align-items:center;justify-content:space-between}.signin-page .field-wrap{position:relative;display:flex;align-items:center;border:1px solid var(--border);background:var(--bg);transition:border-color .2s}.signin-page .field-wrap:focus-within{border-color:var(--accent)}.signin-page .field-wrap.has-error{border-color:var(--red)}.signin-page .field-wrap input{flex:1 1;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--body);font-size:18px;padding:11px 12px}.signin-page .field-wrap input::placeholder{color:#5a7090}.signin-page .toggle-pw{padding:0 12px;cursor:pointer;color:var(--text-muted);font-size:17px;flex-shrink:0;background:none;border:none;transition:color .15s}.signin-page .toggle-pw:hover{color:var(--accent)}.signin-page .msg{padding:11px 14px;font-size:18px;line-height:1.5;display:none;align-items:flex-start;gap:10px;margin-bottom:18px;border:1px solid}.signin-page .msg.is-visible{display:flex}.signin-page .msg-error{background:var(--red-dim);border-color:var(--red);color:var(--red)}.signin-page .msg-icon{flex-shrink:0;font-size:16px;margin-top:1px}@keyframes signin-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}.signin-page .do-shake{animation:signin-shake .4s ease-in-out}.signin-page .btn-primary{width:100%;padding:13px;margin-top:22px;background:transparent;border:1.5px solid var(--accent);color:var(--accent);font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px}.signin-page .btn-primary:hover:not(:disabled){background:var(--accent);color:#000;box-shadow:0 0 24px rgba(91,155,213,.3)}.signin-page .btn-primary:disabled{opacity:.5;cursor:not-allowed}.signin-page .btn-primary.is-loading:after{content:"";position:absolute;right:16px;top:50%;margin-top:-7px;width:14px;height:14px;border:2px solid rgba(91,155,213,.3);border-top:2px solid var(--accent);border-radius:50%;animation:signin-spin .7s linear infinite}@keyframes signin-spin{to{transform:rotate(1turn)}}.signin-page .btn-primary-gold{border-color:var(--accent-gold);color:var(--accent-gold)}.signin-page .btn-primary-gold:hover:not(:disabled){background:var(--accent-gold);color:#000;box-shadow:0 0 24px rgba(201,168,76,.3)}.signin-page .btn-secondary{width:100%;padding:11px;margin-top:14px;background:transparent;border:1px solid var(--border-bright);color:var(--text-muted);font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:all .2s}.signin-page .btn-secondary:hover{border-color:var(--text-muted);color:var(--text)}.signin-page .btn-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:var(--mono);font-size:18px;letter-spacing:.12em;text-transform:uppercase;transition:color .15s;padding:0;text-decoration:underline;text-underline-offset:2px}.signin-page .btn-link:hover{color:var(--accent)}.signin-page .lockout-bar{background:var(--red-dim);border:1px solid var(--red);border-top:none;padding:10px 14px;font-family:var(--mono);font-size:16px;color:var(--red);letter-spacing:.06em;text-align:center;display:none}.signin-page .lockout-bar.is-visible{display:block}.signin-page .attempt-dots{display:none;gap:5px;align-items:center;justify-content:center;margin-top:12px}.signin-page .attempt-dots.is-visible{display:flex}.signin-page .attempt-dots-label{font-family:var(--mono);font-size:16px;color:var(--text-muted);letter-spacing:.08em;margin-right:4px}.signin-page .attempt-dot{width:7px;height:7px;border-radius:50%;border:1px solid var(--border-bright);background:transparent;transition:all .2s}.signin-page .attempt-dot.is-used{background:var(--red);border-color:var(--red)}.signin-page .reset-panel{display:none}.signin-page .reset-panel.is-visible,.signin-page .reset-step{display:block}.signin-page .reset-step.is-hidden{display:none}.signin-page .reset-success-icon{font-size:36px;margin-bottom:12px}.signin-page .reset-success-title{font-family:var(--display);font-size:18px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:8px}.signin-page .reset-success-body{font-size:18px;color:var(--text-muted);line-height:1.7;margin-bottom:18px}.signin-page .reset-success-body strong{color:var(--text)}.signin-page .reset-success-body .reset-contact{font-family:var(--mono);font-size:16px}.signin-page .reset-confirm-center{text-align:center;padding:16px 0}.signin-page .restricted-notice{text-align:center;margin-top:16px;font-family:var(--mono);font-size:16px;color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase}.signin-page .success-overlay{position:fixed;inset:0;background:rgba(11,17,32,.95);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:9999;opacity:0;pointer-events:none;transition:opacity .4s}.signin-page .success-overlay.is-visible{opacity:1;pointer-events:all}.signin-page .success-check{font-size:48px;animation:signin-pop .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes signin-pop{0%{transform:scale(.5)}to{transform:scale(1)}}.signin-page .success-msg{font-family:var(--display);font-size:22px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--green)}.signin-page .success-sub{font-family:var(--mono);font-size:16px;color:var(--text-muted);letter-spacing:.1em;white-space:nowrap}.signin-page .success-bar-wrap{width:200px;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.signin-page .success-bar{height:100%;background:var(--green);border-radius:2px;width:0;transition:width 1.8s linear}.signin-page .success-redirect{font-family:var(--mono);font-size:16px;color:var(--text-dim);margin-top:4px;letter-spacing:.08em}@media (max-width:500px){.signin-page .panel{padding:24px 20px}}