@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');*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;transition:all var(--transition)}:root{--primary:#5046e5;--primary-hover:#4338ca;--primary-light:#818cf8;--primary-subtle:rgba(80,70,229,0.08);--primary-background:linear-gradient(to right,var(--primary),var(--primary-hover));--secondary:#16a34a;--secondary-hover:#15803d;--secondary-light:#86efac;--secondary-background:linear-gradient(to right,var(--secondary),var(--secondary-hover));--danger:#dd3f35;--danger-hover:#c6382f;--warning:#e49e45;--disabled:#9ca3af;--text:#1f2937;--text-light:#6b7280;--text-lighter:#9ca3af;--bg:#f9fafb;--card-bg:#ffffff;--border:#e5e7eb;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-md:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-lg:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--text-size-xl:1.5rem;--text-size-lg:1.25rem;--text-size-md:1rem;--text-size-sm:0.75rem;--text-size-xs:0.5rem;--border-radius:0.75rem;--button-radius:0.5rem;--toast-radius:0.25rem}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}body{display:flex;flex-direction:column;min-height:100dvh;line-height:1.5}main{display:flex;flex-direction:column;flex-grow:1;height:0}a{color:var(--primary)}a:hover{color:var(--primary-hover)}a.danger{color:var(--danger)}a.danger:hover{color:var(--danger-hover)}.centered{margin:0 auto}p.centered{text-align:center}.hidden{display:none}.toast-container{position:fixed;z-index:9999;top:5em;right:var(--space-sm);transition:all 0.3s ease}.toast{display:flex;align-items:flex-start;gap:var(--space-xs,0.5rem);font-size:var(--text-size-sm);color:white;margin-bottom:var(--space-md);padding:var(--space-sm);border-radius:var(--toast-radius);min-width:15em;max-width:30em;opacity:0;transform:translateX(100%);transition:all 0.3s ease}.toast.show{opacity:1;transform:translateX(0)}.toast.error{background-color:var(--danger)}.toast.success{background-color:var(--secondary)}.toast.info{background-color:var(--primary)}.toast.warning{background-color:var(--warning)}.toast-content{flex:1;line-height:1.4}.toast-close{background:none!important;padding:0;margin:0;width:1em;height:1em;line-height:1}.toast-close:hover{opacity:1;background-color:rgba(255,255,255,0.1)}.toast-close:focus{outline:2px solid rgba(255,255,255,0.5);outline-offset:1px}.toast-close:active{background-color:rgba(255,255,255,0.2)}.toast.persistent{border-left:4px solid rgba(255,255,255,0.3);box-shadow:0 4px 12px rgba(0,0,0,0.15)}@media screen and (max-width:60rem){.toast-container{right:50%;transform:translate(50%);text-align:center}}label{display:block;color:var(--text);font-size:var(--text-size-md);font-weight:500}input,textarea,select{width:100%;padding:var(--space-md);border:1px solid var(--border);border-radius:var(--button-radius);background-color:var(--bg)}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(80,70,229,0.1);outline:none}button{display:block;width:100%;padding:var(--space-md);background:var(--primary-background);color:white;border:none;border-radius:var(--button-radius);font-size:var(--text-size-md);font-weight:500;cursor:pointer}a.button:not(.disabled):hover,button:not(:disabled):hover{transform:translateY(-2px);background:var(--primary-hover);box-shadow:var(--shadow)}button.badge{width:auto;aspect-ratio:1 / 1;color:white;background-color:var(--primary);padding:var(--space-md);text-align:center;border-radius:var(--button-radius)}a.button.disabled,button:disabled{background:var(--disabled)}a.button{cursor:pointer}form p{margin-bottom:var(--space-lg)}form .errorlist{color:#b91c1c;font-size:var(--text-size-sm);background-color:#fee2e2;border:1px solid #f87171;padding:1em;margin-bottom:1em;border-radius:4px;color:#b91c1c;font-weight:600}form .errorlist li{list-style-type:none}form .helptext{font-size:var(--text-size-sm);color:var(--text-lighter)}form p.help-text{margin-top:var(--space-sm);font-size:var(--text-size-sm);text-align:center}form .password-visibility-wrapper{display:grid;grid-template-columns:1fr;grid-template-rows:1fr;grid-template-areas:"single"}form .password-visibility-wrapper input{grid-area:single}form .password-visibility-wrapper i{grid-area:single;align-self:center;justify-self:end;margin-right:var(--space-sm);color:var(--text-light)}.navbar{display:flex;align-items:center;padding:var(--space-md);color:white;background:var(--primary-background)}.navbar nav{display:flex;gap:var(--space-sm)}.navbar a{color:white}.navbar button,.navbar a.button{background:rgba(255,255,255,0.1);padding:var(--space-sm);border-radius:var(--button-radius)}.brand{flex-grow:1}.brand>a{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none}.brand i{font-size:1.2rem}.brand h1{font-size:var(--text-size-lg);font-weight:600;position:relative;top:2px}.card{border-radius:var(--border-radius);box-shadow:var(--shadow-lg)}.card-header{padding:var(--space-lg);border-radius:var(--border-radius) var(--border-radius) 0 0;background:var(--primary-background);color:white;text-align:center}.card-header p{font-size:var(--text-size-sm)}.card-body{margin-top:var(--space-lg);padding:var(--space-lg)}.card-footer{text-align:center;font-size:var(--text-size-md);margin:var(--space-md) auto}.card.small{width:30em;max-width:90%}.card-holder{display:flex;flex-grow:1;align-items:center;max-height:100vh}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}