*{box-sizing:border-box}body{margin:0;background:#eff7ff;font-family:Tahoma,Arial,sans-serif;color:#142e50}header{display:flex;justify-content:space-between;align-items:center;padding:16px max(18px,calc((100vw - 950px)/2));background:#123c83;color:white;gap:12px;flex-wrap:wrap}a{color:inherit;text-decoration:none}nav a{margin:0 8px}main{max-width:950px;margin:auto;padding:18px}.hero{position:relative;text-align:center;background:linear-gradient(115deg,#1474d4,#1761b6);color:white;border-radius:24px;padding:34px 12px;overflow:hidden}.hero h1{font-size:clamp(26px,5vw,46px);margin:10px}.hero p{font-size:18px}.float{font-size:35px;animation:bounce 2.2s infinite alternate}@keyframes bounce{to{transform:translateY(-12px) rotate(8deg)}}.panel{background:white;border-radius:20px;box-shadow:0 5px 25px #1b47751c;margin:18px 0;padding:22px}.row,.tabs{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.tabs{margin-bottom:15px}button{border:0;border-radius:12px;background:#ffd447;color:#17335c;font-size:16px;font-weight:bold;padding:12px 19px;cursor:pointer}button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:default}.ghost{background:#e8f1ff}input,select{padding:12px;border:1px solid #a5bad6;border-radius:10px;font:inherit;width:100%;max-width:100%}label{display:block;margin:12px 0;font-weight:bold}label input,label select{display:block;margin-top:6px}#authForm{max-width:500px;margin:auto}#message{margin:12px 0;color:#a12121;font-weight:bold}.chip{display:inline-block;border-radius:12px;padding:10px;background:#e8f2ff;margin:5px}.role{display:inline-flex;border-radius:50%;width:65px;height:65px;align-items:center;justify-content:center;background:#ffe16c;font-size:35px;animation:reveal .7s ease-out}@keyframes reveal{0%{transform:scale(.1) rotate(-270deg)}70%{transform:scale(1.3) rotate(10deg)}100%{transform:scale(1) rotate(0)}}.choice{padding:12px;background:#f0f6ff;border-radius:12px;margin:8px 0;display:flex;align-items:center;gap:10px}.choice input{width:auto}h2{margin-top:0}table{border-collapse:collapse;width:100%}td,th{padding:12px;border-bottom:1px solid #ddd;text-align:right}@media(max-width:550px){.panel{padding:15px}.row>*{flex:1 1 100%}.hero{padding:26px 10px}}