*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main,"Montserrat", sans-serif);background-color:var(--surface-body);min-height:100dvh;color:var(--text-primary);justify-content:center;align-items:center;display:flex}.container{background-color:var(--surface-default);border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-lg);width:95%;max-width:1300px;min-height:90%;padding:20px;display:flex;overflow:hidden}.form-panel{flex-direction:column;flex:.5;justify-content:center;padding:40px 60px;display:flex}.form-panel h1{font-size:var(--font-size-h1,32px);font-weight:var(--font-weight-bold,700);color:var(--text-primary);margin-bottom:40px}form{gap:var(--spacing-lg,25px);flex-direction:column;width:100%;display:flex}.input-wrapper{width:100%;position:relative}.input-wrapper i,.input-wrapper svg{color:var(--color-text-muted);z-index:10;pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.input-wrapper .password-toggle{cursor:pointer;right:20px}.input-wrapper label{color:var(--color-text-muted);pointer-events:none;transition:color var(--transition-normal,.2s ease-out), background-color var(--transition-normal,.2s ease-out), border-color var(--transition-normal,.2s ease-out), box-shadow var(--transition-normal,.2s ease-out), opacity var(--transition-normal,.2s ease-out), transform var(--transition-normal,.2s ease-out);background-color:var(--surface-default);padding:0 5px;font-size:.875rem;position:absolute;top:50%;left:50px;transform:translateY(-50%)}input:focus+label,input:not(:placeholder-shown)+label{color:var(--text-brand);font-size:.875rem;top:0}input[type=email],input[type=password]{width:100%;height:var(--input-height,50px);border:2px solid var(--color-border-focus);border-radius:var(--radius-md,8px);font-family:var(--font-main,"Montserrat", sans-serif);font-size:var(--font-size-body,16px);color:var(--text-primary);transition:border-color var(--transition-normal,.3s), box-shadow var(--transition-normal,.3s);background-color:#0000;outline:none;padding:15px 20px 15px 50px}input::placeholder{color:#0000}input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--focus-halo)}.forgot-password{font-size:var(--font-size-small,14px);color:var(--color-text-muted);transition:color var(--transition-normal,.3s);align-self:flex-end;margin-top:-15px;margin-bottom:20px;text-decoration:none}@media (hover:hover){.forgot-password:hover{color:var(--text-brand);text-decoration:underline}}.action-buttons-container{gap:20px;width:100%;display:flex}.btn{text-align:center;border-radius:var(--radius-md,8px);font-family:var(--font-main,"Montserrat", sans-serif);font-size:var(--font-size-body,16px);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:color var(--transition-normal,.3s ease), background-color var(--transition-normal,.3s ease), border-color var(--transition-normal,.3s ease), box-shadow var(--transition-normal,.3s ease), opacity var(--transition-normal,.3s ease), transform var(--transition-normal,.3s ease), border-radius var(--transition-normal,.3s ease);min-height:var(--button-height,48px);box-shadow:var(--shadow-sm);border:none;flex:1;padding:15px 20px;text-decoration:none}.btn-primary{background-color:var(--color-primary);color:var(--interactive-primary-text)}@media (hover:hover){.btn-primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-lg)}}.btn-secondary{color:var(--text-brand);border:1px solid var(--color-primary);background-color:#0000}@media (hover:hover){.btn-secondary:hover{background-color:var(--surface-selected)}}.image-panel{background-color:var(--surface-selected);flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.image-panel img{max-width:140%;height:auto}@media (max-width:62rem){.container{flex-direction:column;width:90%;max-width:500px}.image-panel{display:none}.form-panel{padding:20px}}@media (max-width:36rem){.action-buttons-container{flex-direction:column}.form-panel{padding:30px 25px}.form-panel h1{font-size:var(--font-size-h2,24px);text-align:center;margin-bottom:30px}}input.error{animation:.3s shake;border-color:var(--color-error)!important;box-shadow:0 0 0 3px var(--status-error-bg)!important}.error-message{width:100%;color:var(--color-error);background-color:var(--status-error-bg);border-radius:var(--radius-md,8px);font-size:var(--font-size-small,14px);text-align:center;font-weight:var(--font-weight-semibold,600);border:1px solid var(--status-error-border);margin-bottom:15px;padding:12px}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}to{transform:translate(0)}}.remember-me-container{align-items:center;gap:8px;margin-bottom:16px;display:flex}.remember-me-container input[type=checkbox]{width:auto;margin:0}.auth-container .remember-me-container label{color:var(--text-secondary);font-size:var(--fs-small);pointer-events:auto;position:static;transform:none}@media (pointer:coarse){.remember-me-container{min-height:var(--touch-target);margin-bottom:0}.remember-me-container input[type=checkbox]{flex-shrink:0;width:1.5rem;height:1.5rem}.auth-container .remember-me-container label{flex:1;align-self:stretch;align-items:center;display:flex}.forgot-password{min-height:var(--touch-target);align-items:center;margin-top:-25px;margin-bottom:0;display:inline-flex}.btn-primary:active{background-color:var(--color-primary-hover);box-shadow:var(--shadow-sm)}.btn-secondary:active{background-color:var(--surface-selected)}.forgot-password:active{color:var(--text-brand);text-decoration:underline}}@media (max-width:36rem){.btn.btn-register{color:var(--text-brand);border:1px solid var(--color-primary);background-color:#0000;padding-block:14px}}@media (max-width:36rem) and (hover:hover){.btn.btn-register:hover{background-color:var(--surface-selected);box-shadow:var(--shadow-sm)}}@media (max-width:36rem) and (pointer:coarse){.btn.btn-register:active{background-color:var(--surface-selected);box-shadow:var(--shadow-sm)}}
