/*!
 * MedicalSpacesOS — Anmeldung
 * Eigenständig, damit auf der Anmeldeseite nicht die ganze Anwendung geladen wird.
 * Wird zusätzlich auf wp-login.php eingebunden (Passwort zurücksetzen).
 */
:root{
	--msos-bg:#F6F1E9; --msos-surface:#FFFCF7; --msos-ink:#221C17; --msos-muted:#7A6D62;
	--msos-line:#E7DDCE; --msos-line-2:#D8CAB6; --msos-accent:#0F5C58; --msos-accent-hi:#14736D;
	--msos-accent-soft:#DCEAE7; --msos-red:#A3372A; --msos-red-soft:#F7E0DB;
	--msos-ff:'Plus Jakarta Sans','Segoe UI',system-ui,-apple-system,sans-serif;
	--msos-ff-display:Fraunces,'Iowan Old Style',Georgia,serif;
}

.msos-login-wrap,.msos-login-wrap *{box-sizing:border-box}
.msos-login-wrap{
	min-height:100dvh; display:grid; place-items:center; padding:32px 16px;
	background:var(--msos-bg); font-family:var(--msos-ff); color:var(--msos-ink);
}
.msos-login-card{
	width:100%; max-width:410px; background:var(--msos-surface);
	border:1px solid var(--msos-line); border-radius:22px; padding:30px 28px 24px;
	box-shadow:0 2px 6px rgba(70,48,28,.07), 0 18px 40px -22px rgba(60,40,22,.35);
}
.msos-login-brand{display:flex; align-items:center; margin-bottom:26px}
.msos-login-brand img{width:min(100%,260px); height:auto; display:block}
.msos-login-mark{
	width:36px; height:36px; border-radius:11px; flex:none; display:grid; place-items:center;
	background:linear-gradient(150deg,var(--msos-accent-hi),var(--msos-accent));
}
.msos-login-mark svg{width:20px;height:20px}
.msos-login-name{display:block; font-family:var(--msos-ff-display); font-size:17px; font-weight:600; letter-spacing:-.02em}
.msos-login-name span{color:var(--msos-accent)}
.msos-login-sub{display:block; font-size:9.5px; letter-spacing:.11em; text-transform:uppercase; color:#9C9085; font-weight:700}

.msos-login-title{
	font-family:var(--msos-ff-display); font-size:26px; font-weight:500; letter-spacing:-.02em;
	margin:0 0 6px; line-height:1.15;
}
.msos-login-lead{margin:0 0 20px; font-size:13.5px; color:var(--msos-muted); line-height:1.55}

.msos-login-note,.msos-login-error{
	border-radius:10px; padding:10px 12px; font-size:13px; margin-bottom:16px; line-height:1.45;
}
.msos-login-note{background:var(--msos-accent-soft); color:#0A413E}
.msos-login-error{background:var(--msos-red-soft); color:var(--msos-red); font-weight:600}

.msos-login-form{display:flex; flex-direction:column; gap:14px}
.msos-field{display:flex; flex-direction:column; gap:5px}
.msos-field label{font-size:12.5px; font-weight:600}
.msos-field input{
	height:42px; padding:0 12px; border:1px solid var(--msos-line-2); border-radius:10px;
	background:var(--msos-surface); font-size:15px; font-family:inherit; color:var(--msos-ink);
	transition:border-color .18s, box-shadow .18s;
}
.msos-field input:focus{outline:0; border-color:var(--msos-accent); box-shadow:0 0 0 3px var(--msos-accent-soft)}

.msos-remember{display:flex; align-items:center; gap:8px; font-size:13px; color:var(--msos-muted); cursor:pointer}
.msos-remember input{accent-color:var(--msos-accent); width:16px; height:16px}

.msos-btn{
	display:inline-flex; align-items:center; justify-content:center; height:44px; padding:0 18px;
	border-radius:10px; border:1px solid var(--msos-line-2); background:var(--msos-surface);
	color:var(--msos-ink); font-size:14.5px; font-weight:600; font-family:inherit; cursor:pointer;
	text-decoration:none; transition:transform .1s, background .18s, border-color .18s;
}
.msos-btn-primary{background:var(--msos-accent); border-color:var(--msos-accent); color:#FFFCF6}
.msos-btn-primary:hover{background:var(--msos-accent-hi)}
.msos-btn:active{transform:translateY(1px)}

.msos-login-foot{
	display:flex; flex-direction:column; gap:10px; margin-top:20px; padding-top:16px;
	border-top:1px solid var(--msos-line); font-size:12.5px;
}
.msos-login-foot a{color:var(--msos-accent); text-decoration:none; font-weight:600}
.msos-login-foot a:hover{text-decoration:underline}
.msos-login-legal{color:#9C9085; font-size:11.5px; line-height:1.5}

/* wp-login.php (Passwort zurücksetzen) in derselben Anmutung */
body.login{background:var(--msos-bg); font-family:var(--msos-ff)}
body.login h1 a{
	background-image:none !important; width:auto; height:auto; text-indent:0; overflow:visible;
	font-family:var(--msos-ff-display); font-size:22px; font-weight:600; color:var(--msos-ink);
	letter-spacing:-.02em; line-height:1.3;
}
body.login #login form{
	background:var(--msos-surface); border:1px solid var(--msos-line); border-radius:18px;
	box-shadow:0 18px 40px -24px rgba(60,40,22,.4); padding:26px 24px;
}
body.login input[type=text],body.login input[type=password],body.login input[type=email]{
	border-radius:10px; border-color:var(--msos-line-2); padding:8px 12px; font-size:15px;
}
body.login input:focus{border-color:var(--msos-accent) !important; box-shadow:0 0 0 3px var(--msos-accent-soft) !important}
body.login .button-primary{
	background:var(--msos-accent) !important; border-color:var(--msos-accent) !important;
	border-radius:10px !important; box-shadow:none !important; text-shadow:none !important; height:40px; font-weight:600;
}
body.login .button-primary:hover{background:var(--msos-accent-hi) !important}
body.login #backtoblog,body.login .language-switcher{display:none}
body.login #nav a{color:var(--msos-accent); font-weight:600}
body.login .message,body.login .notice{border-left-color:var(--msos-accent); border-radius:10px}

/* Vollbild: die Anmeldung läuft über eine eigene Vorlage ohne Theme-Rahmen. */
body.msos-login-page{margin:0!important;padding:0!important}
body.msos-login-page .msos-login-wrap{min-block-size:100dvh}
.msos-login-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px}
.msos-login-actions .msos-btn{flex:1; text-align:center; text-decoration:none}
