body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:linear-gradient(180deg,#e8f2fb 0%,#f8fbff 100%);color:#172b4d;margin:0;min-height:100vh}
.container{max-width:720px;margin:40px auto 60px;padding:32px 34px 40px;background:#ffffff;border:1px solid rgba(16,56,111,0.08);border-radius:30px;box-shadow:0 24px 80px rgba(15,44,89,0.12)}
.logo{text-align:center;margin-bottom:18px}
.logo img{max-width:240px;width:100%;height:auto;display:block;margin:0 auto}
.container h1{text-align:center;font-size:2.6rem;margin:0 0 18px;font-weight:800;letter-spacing:-0.04em;color:#10264d}
.header{text-align:center;margin-bottom:26px}
.header h1{font-size:2.6rem;margin:0 0 10px;font-weight:800;letter-spacing:-0.04em;color:#10264d}
.header p{margin:0 auto;font-size:1rem;line-height:1.8;max-width:620px;color:#394d6d}
input,select,textarea{width:100%;padding:15px 16px;margin:10px 0 0 0;box-sizing:border-box;border:1px solid #d7e2ef;border-radius:16px;background:#fbfdff;color:#10264d;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}
textarea{min-height:150px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:#4b90ff;box-shadow:0 0 0 4px rgba(74,144,255,0.14)}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath fill='%23344663' d='M7 8L0 0h14z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;background-size:14px 8px}
button{width:100%;padding:16px 18px;margin:20px 0 0 0;font-size:1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1c64f2 0%,#2056e5 100%);border:none;border-radius:16px;box-shadow:0 14px 32px rgba(28,100,242,0.22);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 32px rgba(28,100,242,0.28)}
button:disabled{background:#9bb7f1;cursor:not-allowed;box-shadow:none}
.field-hint{color:#475669;font-size:0.95rem;margin:8px 0 16px;padding:13px 16px;background:#eef6ff;border:1px solid #c7ddff;border-radius:14px}
.field-error{border-color:#f44336;background:#fff2f2}
.field-error-message{color:#b00020;font-size:0.9rem;margin:6px 0 14px}
.success-message{background:#e8f5e9;border-left:4px solid #4caf50;padding:18px;border-radius:16px;color:#1f3d24}
.success-message h2{margin:0 0 10px;color:#1f3d24}
.success-message p{margin:5px 0}
.error-message{background:#ffebee;border-left:4px solid #f44336;padding:18px;border-radius:16px;color:#8a1e12}
.error-message h2{margin:0 0 10px}
.error-message p{margin:0}