@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap");:root{--white:hsla(0,0%,100%,.15);--primary-bg:#0c1e35;--secondary-bg:#121f3a;--accent-color:#f97316;--accent-hover:#ff8c4c;--border-color:#2a3654;--text-color:#fff;--text-muted:#b9c1d9;--input-bg:#1a2b4a}body{background:var(--primary-bg);height:100vh;font-family:Poppins,sans-serif;margin:0;overflow:hidden;color:var(--text-color)}.container,body{display:flex;justify-content:center;align-items:center}.container{flex-direction:column;width:100%;height:100%}.container,form{position:relative}form{margin-top:20px;background:var(--secondary-bg);padding:3em;border-radius:.5rem;border-left:1px solid var(--border-color);border-top:1px solid var(--border-color);box-shadow:0 4px 12px rgba(0,0,0,.25);text-align:center;transition:all .2s ease-in-out;z-index:10}form p{font-weight:500;font-size:1rem;margin-top:0;margin-bottom:1.5rem}form a,form p{color:var(--text-muted)}form a{text-decoration:none;font-size:.875rem;transition:color .3s ease-in}form a:hover{color:var(--accent-color)}form a:active{color:var(--accent-hover)}input{background:var(--input-bg);padding:.75rem;width:100%;margin-bottom:1em;margin-top:1em;border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-color);font-family:Inter,sans-serif;font-weight:400;transition:all .2s ease-in-out}form input:focus,form input:hover{border-color:var(--accent-color)}form input:focus{outline:none;box-shadow:0 4px 8px rgba(249,115,22,.2)}button{font-size:.875rem;background:var(--accent-color);width:150px;padding:.5rem 1rem;margin-bottom:1em;margin-top:.5em;border:none;border-radius:.375rem;color:#fff;font-family:Inter,sans-serif;font-weight:500;transition:background-color .3s ease-in;cursor:pointer}button:hover{background-color:var(--accent-hover)}button:active{background-color:var(--accent-color)}button:disabled{opacity:.9;cursor:default}.spinner-container{display:flex;align-items:center;justify-content:center;gap:8px}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}button.loading{min-width:150px;position:relative;color:hsla(0,0%,100%,.9);transition:all .3s ease}button.loading,button.loading:hover{background-color:var(--accent-color)}.drop{background:var(--white);border-radius:10px;border-left:1px solid var(--border-color);border-top:1px solid var(--border-color);position:absolute;transition:all .5s ease-in-out;opacity:.5}.drop-1{top:-20px;left:-40px;z-index:-1}.drop-1,.drop-2{height:80px;width:80px;background-color:var(--secondary-bg)}.drop-2{bottom:-30px;right:-10px;z-index:11}.drop-3{height:100px;width:100px;bottom:120px;right:-50px;background-color:var(--secondary-bg)}.drop-4{height:80px;width:80px;top:-20px;z-index:11;background:url(/logo.png) no-repeat 50%/cover #121f3a;border:1px solid var(--border-color);border-radius:50%}.drop-5{height:120px;width:120px;top:-60px;right:-60px;z-index:11;background-color:var(--secondary-bg)}.container:hover .drop-1{animation:animate1 1s ease-in-out}.container:hover .drop-2{animation:animate2 1s ease-in-out}.container:hover .drop-3{animation:animate3 1s ease-in-out}@keyframes animate1{0%{transform:translate(0)}50%{transform:translate(-5px,-5px)}to{transform:translate(0)}}@keyframes animate2{0%{transform:translate(0)}50%{transform:translate(5px,5px)}to{transform:translate(0)}}@keyframes animate3{0%{transform:translate(0)}50%{transform:translate(5px,5px)}to{transform:translate(0)}}a,button:focus,input:focus,select:focus{outline:none}.footer-text{text-align:center;margin-top:10px;color:var(--text-muted);opacity:.8;font-size:.8rem}.footer-text p{margin:5px 0}@media (max-width:768px){form{padding:2em}button{width:120px}.drop-1{top:-10px;left:-30px}.drop-1,.drop-2{height:60px;width:60px}.drop-2{bottom:-20px;right:-5px}.drop-3{bottom:80px;right:-30px}.drop-3,.drop-4{height:80px;width:80px}.drop-4{top:-25px}.password-container{flex-direction:column;align-items:flex-start}.password-container input{width:100%}.toggle-password{position:relative;right:0;top:1.8rem}.error-message{font-size:.7rem;margin-top:.5rem;position:relative;left:0}.input-container{margin-bottom:1rem}.password-checklist{font-size:.75rem}.password-checklist li{margin:.2rem 0}.spinner{width:16px;height:16px}.spinner-container{gap:6px}.footer-text{margin-top:18px;font-size:.75rem}}@media (max-width:480px){form{padding:1.5em}button{width:100px}.drop-1{top:-20px;left:-20px}.drop-1,.drop-2{height:70px;width:70px}.drop-2{bottom:-30px;right:-20px}.drop-3{height:70px;width:70px;bottom:100px;right:-30px}.drop-4{height:50px;width:50px;top:-5px}.password-container{flex-direction:column;align-items:flex-start}.password-container input{width:100%}.toggle-password{position:relative;right:0;top:1.8rem}.error-message{font-size:.6rem;margin-top:.4rem;position:relative;left:0}.input-container{margin-bottom:.8rem}.password-checklist{font-size:.75rem}.password-checklist li{margin:.1rem 0}.spinner{width:14px;height:14px}.spinner-container{gap:4px}button.loading{min-width:120px}.footer-text{margin-top:15px;font-size:.7rem}}.password-container{position:relative;display:flex;align-items:center}.password-container input{flex:1}.toggle-password{background:none;border:none;color:var(--text-color);position:absolute;right:15px}.toggle-password:focus{outline:none}.error-message{color:#ff4d4d;font-size:.6rem;margin-bottom:5px;position:absolute;bottom:4;left:0;width:100%;visibility:visible;min-height:2em}.input-container{position:relative;margin-bottom:1.2rem}.password-checklist{margin-top:.5rem;font-size:.875rem;text-align:left;color:var(--text-muted)}.password-checklist ul{list-style-type:none;padding:0}.password-checklist li{margin:.25rem 0;display:flex;align-items:center}.password-checklist li .fa-check-circle{color:#4ade80}.password-checklist li .fa-times-circle{color:#ff4d4d}.valid{color:#4ade80}.invalid,.valid{margin-left:.25rem}.invalid{color:#ff4d4d}.toggle-password{cursor:pointer;margin-left:.5rem}input::placeholder{color:var(--text-muted);opacity:.7}