*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,#e5f4ff,#f5fbff);color:#022b3a}#root{min-height:100vh}.page-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem}.app-title{font-size:1.9rem;font-weight:700;color:#055c9d;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.75rem;text-align:center}.auth-container,.welcome-container{width:100%;display:flex;flex-direction:column;align-items:center}.auth-box,.welcome-box{background:#ffffff;border-radius:16px;padding:2rem;width:100%;max-width:420px;box-shadow:0 18px 38px #055c9d14;border:1px solid rgba(5,92,157,.08)}.auth-heading,.welcome-heading{font-size:1.4rem;margin-bottom:1.5rem;color:#033f63;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.9rem;color:#055c9d}.form-input{padding:.7rem .8rem;border-radius:10px;border:1px solid #c9e3f7;font-size:.95rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus{border-color:#55a6ea;box-shadow:0 0 0 2px #55a6ea40}.primary-button,.secondary-button{width:100%;margin-top:.5rem;padding:.75rem 1rem;border-radius:999px;border:none;font-weight:600;cursor:pointer;font-size:.95rem;transition:background .15s ease,transform .08s ease,box-shadow .15s ease}.primary-button{background:linear-gradient(135deg,#55a6ea,#2f7ec6);color:#fff;box-shadow:0 10px 22px #2f7ec640}.primary-button:hover{transform:translateY(-1px);box-shadow:0 14px 26px #2f7ec64d}.primary-button:disabled{opacity:.7;cursor:default;box-shadow:none}.secondary-button{background:#ffffff;color:#055c9d;border:1px solid #c9e3f7}.secondary-button:hover{background:#f3f9ff}.error-message{background:#fde8e8;color:#9b1c1c;border-radius:10px;padding:.6rem .8rem;font-size:.85rem;margin-bottom:.75rem}.success-message{background:#e6fffa;color:#036666;border-radius:10px;padding:.6rem .8rem;font-size:.85rem;margin-bottom:.75rem}.auth-footer{margin-top:1rem;font-size:.85rem;color:#4b6475;text-align:center}.auth-footer a{color:#055c9d;text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}.welcome-text{margin-bottom:1.5rem;font-size:.95rem;color:#4b6475}@media (max-width: 480px){.auth-box,.welcome-box{padding:1.5rem 1.25rem}.app-title{font-size:1.4rem}}
