.login-container{background:var(--bg-main);justify-content:center;align-items:center;min-height:60vh;margin-top:5vh;padding-top:0;padding-bottom:5vh;display:flex}.login-card{background:var(--bg-card);border:1px solid #ffffff0d;border-radius:16px;width:100%;max-width:480px;margin:auto;padding:30px;transition:all .3s;box-shadow:0 10px 30px #0000004d}.role-btn{color:var(--secondary-text);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:20px;padding:8px 16px;font-size:.9rem;transition:all .2s}.role-btn:hover{background:#fff3}.role-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 10px rgba(var(--accent-rgb), .3)}.login-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000080}.login-header h1{color:var(--primary-text);align-items:center;margin-bottom:2rem;font-size:1.8rem;display:flex}.login-header h1:before{content:"";background-color:var(--yellow-bar);border-radius:4px;width:6px;height:28px;margin-right:15px;display:block}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--secondary-text);margin-bottom:.5rem;font-size:.9rem;display:block}.form-group input:not([type=checkbox]){width:100%;color:var(--primary-text);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:12px 15px;font-size:1rem;transition:border-color .2s}.form-group input[type=checkbox]{cursor:pointer;width:auto}.form-group input:focus:not([type=checkbox]){border-color:var(--accent);outline:none}.login-btn{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:20px;width:100%;margin-top:1rem;padding:14px;font-size:1rem;font-weight:700;transition:transform .2s,opacity .2s}.login-btn:hover{opacity:.9;transform:scale(1.02)}.login-footer{text-align:center;margin-top:1.5rem}.login-footer a{color:var(--accent);font-size:.85rem;font-weight:600;text-decoration:none}.login-footer a:hover{text-decoration:underline}.error-message{color:#ef4444;margin-top:5px;font-size:.85rem;font-weight:500}.form-help-text{color:var(--secondary-text);margin-top:6px;font-size:.8rem;line-height:1.4;display:block}.form-group input.input-error{border-color:#ef4444}.form-group input.input-error:focus{border-color:#ef4444;outline:none;box-shadow:0 0 0 1px #ef4444}input[type=date]:not(:focus):invalid{color:#0000;position:relative}input[type=date]:not(:focus):invalid:before{content:attr(placeholder);color:#a0aec0;pointer-events:none;position:absolute;left:12px}input[type=date]:focus,input[type=date]:valid{color:inherit}@media (max-height:700px){.login-card{padding:20px}.form-group{margin-bottom:1rem}}@media (max-width:768px){.login-container{min-height:auto;margin-top:3vh;padding:2rem 1rem}.login-card{max-width:100%;padding:25px}.login-header h1{margin-bottom:1.5rem;font-size:1.5rem}.login-header h1:before{width:5px;height:24px;margin-right:12px}.form-group{margin-bottom:1.2rem}.form-group input:not([type=checkbox]){padding:10px 12px;font-size:.95rem}.login-btn{padding:12px;font-size:.95rem}.role-btn{padding:6px 12px;font-size:.85rem}}@media (max-width:600px){.login-container{margin-top:2vh;padding:1.5rem 1rem}.login-card{padding:20px}.login-header h1{margin-bottom:1.2rem;font-size:1.3rem}.login-header h1:before{width:4px;height:22px;margin-right:10px}.form-group{margin-bottom:1rem}.form-group label{font-size:.85rem}.form-group input:not([type=checkbox]){padding:9px 11px;font-size:.9rem}.login-btn{margin-top:.8rem;padding:10px;font-size:.9rem}.login-footer{margin-top:1rem}.login-footer a,.error-message{font-size:.8rem}}
