.public-auth{min-height:100vh;background:#101827;color:#e6ebf3;display:flex;align-items:center;justify-content:center;padding:32px 18px;font-family:Arial,sans-serif;font-size:14px}.public-auth *{box-sizing:border-box}.public-auth-card{width:400px;max-width:100%;padding:28px;border:1px solid #2b3645;background:#1e2937;border-radius:14px;box-shadow:0 16px 60px #080d1730}.public-auth-card header{text-align:center}.public-auth-card .public-auth-mark{width:48px;height:48px;object-fit:contain;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700;margin:0 auto 7px}.public-auth-card h1{font-size:48px;line-height:1.15;font-weight:700;margin:0 0 22px;letter-spacing:-1px;color:#fff;overflow-wrap:anywhere}.public-auth-card h2{text-align:center;font-size:14px;font-weight:400;margin:0 0 24px}.public-auth-find h2{font-size:16px;font-weight:700;margin-bottom:10px}.public-auth-description{text-align:center;line-height:1.5;margin:0 0 26px}.public-auth a{color:#69acff;text-decoration:none}.public-auth a:hover{text-decoration:underline}.public-student-note{font-size:12px;text-align:center;background:#20314c;border:1px solid #2b3c56;border-radius:6px;padding:12px;margin-bottom:16px;line-height:1.5}.public-student-note a{text-decoration:underline}.public-line{display:flex;align-items:center;gap:8px;border-bottom:1px solid #3a4555;min-height:54px;padding:8px 10px;margin:0}.public-line>svg{width:17px;height:17px;flex:none;color:#65aaff}.public-auth .public-line input{width:100%;min-width:0;border:0;background:transparent;color:#f3f6fa;outline:none;font-size:13px;padding:5px 0;height:auto;border-radius:0;box-shadow:none}.public-line input::placeholder{color:#abb4c1;opacity:1}.public-line:focus-within{border-color:#6aaaff;box-shadow:0 1px #6aaaff}.public-line button{border:0;background:none;color:#a4aebc;cursor:pointer;padding:4px}.public-line button svg{width:16px;height:16px}.public-document-toggle{display:flex;background:#101827;border-radius:25px;width:160px;margin:14px 0 0;padding:2px}.public-document-toggle button{width:50%;border:0;border-radius:25px;padding:7px;background:none;color:#a6b0c0;font-weight:600;font-size:12px;cursor:pointer;transition:background .2s,color .2s}.public-document-toggle button.active{background:#253345;color:#69acff}.public-phone{display:flex;align-items:center;border-bottom:1px solid #3a4555}.public-phone select{width:135px;max-width:40%;padding:10px 4px;border:0;background:#1e2937;color:#c5ceda;font-size:11px;cursor:pointer}.public-phone option{background:#1e2937;color:#eef3fa}.public-phone .public-line{flex:1;min-width:0;border:0}.public-password-help,.public-phone-help{font-size:10px;line-height:1.4;display:block;margin:6px 0 14px;color:#d7deea}.public-forgot{display:block;border:0;background:none;color:#69acff;font-size:12px;margin:23px 0 22px auto;cursor:pointer}.public-submit{width:100%;min-height:41px;border:0;border-radius:6px;background:linear-gradient(100deg,var(--public-accent,#3478f6),#245deb);color:white;font-size:13px;font-weight:700;margin:20px 0 0;cursor:pointer;box-shadow:0 6px 13px #08122d40;transition:transform .15s,filter .15s,box-shadow .15s,background .15s}.public-submit:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 8px 22px #225cdd40;transform:translateY(-2px)}.public-submit:active:not(:disabled){transform:translateY(0) scale(.985);filter:brightness(.94)}.public-submit:disabled{opacity:.6;cursor:default}.public-auth a:focus-visible,.public-auth button:focus-visible,.public-auth select:focus-visible{outline:2px solid #80b7ff;outline-offset:3px}.public-auth footer{text-align:center;font-size:12px;margin-top:22px;line-height:1.5}.public-auth footer p{margin:8px 0}.public-legal{font-size:10px;text-align:center;line-height:1.4;margin:22px 0 0}.public-error,.public-success{font-size:12px;line-height:1.5;border-radius:6px;padding:10px;margin-top:14px;overflow-wrap:anywhere}.public-error{background:#582a39;color:#ffe4e8}.public-success{background:#163f39;color:#d9fff0}@media(max-width:480px){.public-auth{padding:18px 12px}.public-auth-card{padding:26px 22px}.public-auth-card h1{font-size:42px}}@media(prefers-reduced-motion:reduce){.public-document-toggle button,.public-submit{transition:none}.public-submit:hover:not(:disabled){transform:none}}