/* Mandantenportal – Branding Werts.Legal
   Palette: #121212 (BG), #7FA3C0 (Akzent Stahlblau), #FAF9F6 (Creme),
            #D97844 (Warm-Orange), #2C3540 (Slate), Font Hanken Grotesk */

.mp-wrap{
	--mp-bg:#121212;
	--mp-panel:#1b1d20;
	--mp-panel-2:#22262b;
	--mp-line:#2c3540;
	--mp-accent:#7fa3c0;
	--mp-accent-2:#d97844;
	--mp-cream:#faf9f6;
	--mp-muted:#8e939c;
	--mp-ink:#1b1f24;
	--mp-ink-soft:#5c6470;
	--mp-line-light:#e2e5ea;
	--mp-accent-dark:#5f83a1;
	max-width:820px;
	margin:0 auto;
	padding:8px 16px 56px;
	font-family:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	color:var(--mp-ink); /* Standard: dunkel, für Text außerhalb der dunklen Karten */
}
.mp-wrap *{box-sizing:border-box}

.mp-brandbar{
	display:flex;align-items:baseline;gap:12px;
	padding:18px 0 22px;border-bottom:1px solid var(--mp-line-light);margin-bottom:28px;
}
.mp-brandmark{font-size:22px;font-weight:700;letter-spacing:.4px;color:var(--mp-ink)}
.mp-brandsub{font-size:14px;font-weight:500;color:var(--mp-accent-dark);text-transform:uppercase;letter-spacing:1.5px}

.mp-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px}
.mp-wrap h1{font-size:26px;font-weight:700;margin:0 0 6px;color:var(--mp-ink)}
.mp-wrap h2{font-size:19px;font-weight:600;margin:0 0 4px;color:var(--mp-ink)}
.mp-lead{color:var(--mp-ink-soft);font-size:15px;margin:0 0 18px}
.mp-sub{color:var(--mp-ink-soft);font-size:13.5px;margin:0 0 16px}
.mp-note{color:var(--mp-ink-soft);font-size:12.5px;margin-top:16px}
.mp-muted{color:var(--mp-ink-soft)}

/* Innerhalb der dunklen Karten: Creme-Text auf dunklem Grund */
.mp-card{color:var(--mp-cream)}
.mp-card h1,.mp-card h2{color:var(--mp-cream)}
.mp-card .mp-lead,.mp-card .mp-sub,.mp-card .mp-note{color:var(--mp-muted)}

.mp-card{
	background:var(--mp-panel);
	border:1px solid var(--mp-line);
	border-radius:14px;
	padding:26px 26px 24px;
	margin-bottom:20px;
}
.mp-login{max-width:440px;margin:0 auto}
.mp-login h1{text-align:center}
.mp-login .mp-lead{text-align:center}

/* Formulare */
.mp-wrap form{margin:0}
.mp-wrap label{display:block;font-size:13.5px;color:var(--mp-cream);margin-bottom:6px;font-weight:500}
.mp-wrap input[type=text],
.mp-wrap input[type=password],
.mp-wrap input[type=email],
.mp-wrap input[type=file]{
	width:100%;background:var(--mp-panel-2);border:1px solid var(--mp-line);
	color:var(--mp-cream);border-radius:9px;padding:11px 13px;font-size:15px;margin-bottom:16px;
	font-family:inherit;
}
.mp-wrap input:focus{outline:none;border-color:var(--mp-accent);box-shadow:0 0 0 3px rgba(127,163,192,.18)}
.mp-wrap input[type=file]{padding:9px 12px;cursor:pointer}
.login-remember{font-size:13px;color:var(--mp-muted);margin-bottom:14px}
.login-remember input{width:auto;margin:0 6px 0 0}

.mp-btn,
.mp-wrap button[type=submit],
.mp-wrap .button-primary{
	display:inline-block;background:var(--mp-accent);color:#0f1419 !important;
	border:none;border-radius:9px;padding:12px 22px;font-size:15px;font-weight:600;
	cursor:pointer;text-decoration:none;transition:background .15s ease;font-family:inherit;
}
.mp-btn:hover,.mp-wrap button[type=submit]:hover{background:#95b3cd}

.mp-logout{
	color:var(--mp-ink-soft);font-size:14px;text-decoration:none;
	border:1px solid var(--mp-line-light);border-radius:8px;padding:8px 14px;white-space:nowrap;
}
.mp-logout:hover{color:var(--mp-ink);border-color:var(--mp-accent-dark)}
.mp-help{text-align:center;margin:14px 0 0;font-size:13px}
.mp-help a,.mp-wrap a{color:var(--mp-accent)}

/* Datei-Listen */
.mp-files{list-style:none;margin:0;padding:0}
.mp-files li{margin:0 0 10px}
.mp-file{
	display:flex;justify-content:space-between;align-items:center;gap:14px;
	background:var(--mp-panel-2);border:1px solid var(--mp-line);border-radius:10px;
	padding:14px 16px;text-decoration:none;transition:border-color .15s ease,transform .05s ease;
}
.mp-file:hover{border-color:var(--mp-accent);transform:translateY(-1px)}
.mp-file-name{color:var(--mp-cream);font-weight:500;font-size:15px;word-break:break-word}
.mp-file-name:before{content:"↓";color:var(--mp-accent);margin-right:9px;font-weight:700}
.mp-file-meta{color:var(--mp-muted);font-size:12.5px;white-space:nowrap}
.mp-empty{color:var(--mp-muted);font-size:14px;font-style:italic}

.mp-upload{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mp-upload input[type=file]{flex:1;min-width:220px;margin-bottom:0}

/* Meldungen */
.mp-alert{border-radius:10px;padding:13px 16px;margin-bottom:18px;font-size:14px}
.mp-alert-ok{background:rgba(127,163,192,.14);border:1px solid var(--mp-accent);color:var(--mp-cream)}
.mp-alert-error{background:rgba(217,120,68,.14);border:1px solid var(--mp-accent-2);color:#f2d3c2}

@media(max-width:560px){
	.mp-card{padding:20px 18px}
	.mp-topline{flex-direction:column}
	.mp-file{flex-direction:column;align-items:flex-start;gap:4px}
}
