body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eeaeb,#764ba2eb),#0f0f1a;padding:2rem 1rem}body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,.06) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.06) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.03) 0%,transparent 70%);pointer-events:none;z-index:0}.page-wrapper{width:100%;max-width:440px;position:relative;z-index:1}.brand{text-align:center;margin-bottom:2rem}.brand-logo{font-size:2.8rem;margin-bottom:.5rem;display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.brand-name{font-size:1.6rem;font-weight:800;color:#fff;letter-spacing:-.02em;text-shadow:0 2px 12px rgba(0,0,0,.3)}.brand-name span{opacity:.85;font-weight:500}.card{background:#0a0a14bf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2.5rem;box-shadow:0 24px 60px #0006,0 0 0 1px #ffffff0d inset}.card-title{font-size:1.6rem;font-weight:700;color:#fff;margin-bottom:.4rem;letter-spacing:-.02em}.card-subtitle{font-size:.95rem;color:#ffffff8c;margin-bottom:2rem}.success-banner{display:none;background:#48c78e26;border:1px solid rgba(72,199,142,.4);border-radius:10px;padding:.85rem 1.1rem;margin-bottom:1.5rem;color:#6ee7b7;font-size:.9rem;font-weight:500}.success-banner.show{display:block}.form-group{margin-bottom:1.2rem}label{display:block;font-size:.875rem;font-weight:500;color:#ffffffb3;margin-bottom:.45rem;letter-spacing:.01em}input[type=email],input[type=password]{width:100%;padding:.85rem 1rem;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#fff;font-family:inherit;font-size:1rem;transition:border-color .2s,background .2s,box-shadow .2s;outline:none}input[type=email]::placeholder,input[type=password]::placeholder{color:#ffffff4d}input[type=email]:focus,input[type=password]:focus{border-color:#667eeab3;background:#ffffff1a;box-shadow:0 0 0 3px #667eea33}input[type=email].input-error,input[type=password].input-error{border-color:#fc8181b3;box-shadow:0 0 0 3px #fc818126}input[type=password].input-success{border-color:#48c78e99;box-shadow:0 0 0 3px #48c78e1f}.password-strength{margin-top:.5rem}.strength-bar-bg{height:3px;background:#ffffff14;border-radius:2px;overflow:hidden}.strength-bar-fill{height:100%;width:0%;border-radius:2px;transition:width .3s,background-color .3s}.strength-label{font-size:.78rem;color:#ffffff73;margin-top:.25rem}.error-message{display:none;color:#fc8181;font-size:.85rem;margin-top:.4rem;font-weight:500}.error-message.show{display:block}.form-error{display:none;background:#fc81811a;border:1px solid rgba(252,129,129,.3);border-radius:10px;padding:.85rem 1.1rem;margin-bottom:1.2rem;color:#fc8181;font-size:.9rem;font-weight:500}.form-error.show{display:block}.btn-submit{width:100%;padding:.95rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s;letter-spacing:-.01em;margin-top:.5rem;position:relative;overflow:hidden;box-shadow:0 4px 20px #667eea66}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #667eea8c}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{opacity:.7;cursor:not-allowed}.btn-submit .btn-text{display:inline-block;transition:opacity .2s}.btn-submit .btn-spinner{display:none;width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;margin:0 auto}.btn-submit.loading .btn-text{display:none}.btn-submit.loading .btn-spinner{display:block}@keyframes spin{to{transform:rotate(360deg)}}.device-linked-panel{display:none;text-align:center;padding:1.5rem 0 .5rem}.device-linked-panel.show{display:block}.device-linked-panel .panel-icon{font-size:3rem;margin-bottom:1rem;display:block}.device-linked-panel h3{font-size:1.3rem;font-weight:700;color:#fff;margin-bottom:.5rem}.device-linked-panel p{color:#ffffffa6;font-size:.95rem;margin-bottom:1.2rem}.btn-copy-token{display:inline-flex;align-items:center;gap:.4rem;padding:.75rem 1.5rem;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-family:inherit;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s,transform .2s}.btn-copy-token:hover{background:#ffffff2e;transform:translateY(-1px)}.btn-copy-token.copied{background:#48c78e33;border-color:#48c78e66;color:#6ee7b7}.form-divider{border:none;border-top:1px solid rgba(255,255,255,.08);margin:1.8rem 0 1.5rem}.form-links{display:flex;flex-direction:column;gap:.65rem;text-align:center}.form-links a{color:#fff9;text-decoration:none;font-size:.9rem;transition:color .2s}.form-links a:hover{color:#ffffffe6}.form-links a.link-primary{color:#a5b4fc;font-weight:500}.form-links a.link-primary:hover{color:#c7d2fe}.back-link{text-align:center;margin-top:1.5rem}.back-link a{color:#ffffff80;text-decoration:none;font-size:.875rem;display:inline-flex;align-items:center;gap:.3rem;transition:color .2s}.back-link a:hover{color:#fffc}.terms-note{font-size:.78rem;color:#ffffff61;text-align:center;margin-top:1rem;line-height:1.5}@media(max-width:480px){.card{padding:2rem 1.5rem}.brand-name{font-size:1.4rem}}
