/*
Theme Name: Zajak Portal Theme
Description: Theme für das Zajak IT Solutions Verwaltungsportal (Hosting, Domains, Büroservice, DIY-Shop). Design-Tokens und Portal-Layout gemäß Projektplan.
Author: Zajak IT Solutions
Version: 0.1.0
Requires PHP: 7.4
Text Domain: zajak-portal-theme
*/

/* ==========================================================================
   Design-Tokens (aus dem Logo abgeleitet, siehe Projektplan Abschnitt 1)
   ========================================================================== */
:root {
	--zjk-color-navy: #1B2430;
	--zjk-color-terracotta: #B24B36;
	--zjk-color-sage: #7C9188;
	--zjk-color-gold: #D6A631;
	--zjk-color-cream: #F1E9D8;
	--zjk-color-graygreen: #A9B3AA;

	--zjk-color-text: var(--zjk-color-navy);
	--zjk-color-text-muted: #5B6472;
	--zjk-color-bg: #FFFFFF;
	--zjk-color-bg-alt: var(--zjk-color-cream);
	--zjk-color-border: #E2DCCB;

	--zjk-color-success: var(--zjk-color-sage);
	--zjk-color-warning: var(--zjk-color-gold);
	--zjk-color-danger: var(--zjk-color-terracotta);

	--zjk-font-display: "Anton", "Arial Narrow", sans-serif;
	--zjk-font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

	--zjk-radius: 8px;
	--zjk-shadow: 0 1px 3px rgba(27, 36, 48, 0.08), 0 1px 2px rgba(27, 36, 48, 0.06);
}

/* ==========================================================================
   Basis
   ========================================================================== */
body {
	font-family: var(--zjk-font-body);
	color: var(--zjk-color-text);
	background: var(--zjk-color-bg-alt);
	line-height: 1.55;
}

h1, h2, h3, .zjk-display {
	font-family: var(--zjk-font-display);
	letter-spacing: 0.02em;
	color: var(--zjk-color-navy);
	line-height: 1.15;
}

a {
	color: var(--zjk-color-terracotta);
}

/* ==========================================================================
   Header / Marke (Vintage-Logo-Look bleibt hier, nicht im Dashboard)
   ========================================================================== */
.zjk-site-header {
	background: var(--zjk-color-navy);
	color: var(--zjk-color-cream);
	padding: 1rem 1.5rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.zjk-site-header__logo img {
	height: 48px;
	width: auto;
}

.zjk-site-header__logo-text {
	font-family: var(--zjk-font-display);
	font-size: 1.5rem;
	color: var(--zjk-color-cream);
	text-decoration: none;
}

/* ==========================================================================
   Portal-Dashboard (Kundenbereich) – ruhiges, funktionales Admin-UI,
   Farbpalette aus dem Logo, aber ohne Sticker-Optik (Plan Abschnitt 1).
   ========================================================================== */
.zjk-portal-dashboard {
	max-width: 1100px;
	margin: 0 auto;
	padding: 1.5rem 0;
}

.zjk-portal-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1.25rem;
	margin-top: 1.5rem;
}

.zjk-portal-card {
	background: var(--zjk-color-bg);
	border: 1px solid var(--zjk-color-border);
	border-radius: var(--zjk-radius);
	box-shadow: var(--zjk-shadow);
	padding: 1.25rem;
}

.zjk-portal-card h3 {
	margin-top: 0;
	font-size: 1.1rem;
}

/* ==========================================================================
   Buttons
   ========================================================================== */
.zjk-button {
	display: inline-block;
	font-family: var(--zjk-font-body);
	font-weight: 600;
	font-size: 0.9rem;
	padding: 0.6rem 1.1rem;
	border-radius: var(--zjk-radius);
	background: var(--zjk-color-terracotta);
	color: #fff;
	text-decoration: none;
	border: none;
	cursor: pointer;
	transition: filter 0.15s ease;
}
.zjk-button:hover {
	filter: brightness(0.92);
	color: #fff;
}
.zjk-button--secondary {
	background: var(--zjk-color-navy);
}
.zjk-button--danger {
	background: transparent;
	color: var(--zjk-color-danger);
	border: 1px solid var(--zjk-color-danger);
}
.zjk-button--danger:hover {
	background: var(--zjk-color-danger);
	color: #fff;
}
.zjk-button--small {
	padding: 0.4rem 0.8rem;
	font-size: 0.8rem;
}

/* ==========================================================================
   Zustände: leer, Warnung, Status, Badge
   ========================================================================== */
.zjk-empty-state {
	color: var(--zjk-color-text-muted);
	margin-bottom: 1rem;
}

.zjk-alert {
	border-radius: var(--zjk-radius);
	padding: 0.9rem 1.1rem;
	margin-bottom: 1.25rem;
}
.zjk-alert--warning {
	background: #FBF1DD;
	border: 1px solid var(--zjk-color-gold);
	color: #6B5312;
}
.zjk-alert--warning a {
	font-weight: 600;
}

.zjk-status {
	display: inline-block;
	padding: 0.2rem 0.6rem;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 600;
}
.zjk-status--aktiv { background: #E7EEE9; color: #3E5347; }
.zjk-status--gekuendigt { background: #F3E3DE; color: var(--zjk-color-terracotta); }
.zjk-status--ausstehend { background: #FBF1DD; color: #6B5312; }
.zjk-status--unbekannt { background: #EEE; color: #777; }

.zjk-badge {
	display: inline-block;
	margin-left: 0.4rem;
	padding: 0.15rem 0.5rem;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 600;
}
.zjk-badge--warning {
	background: var(--zjk-color-gold);
	color: var(--zjk-color-navy);
}

/* ==========================================================================
   Tabellen (Portal-Listen)
   ========================================================================== */
.zjk-table {
	width: 100%;
	border-collapse: collapse;
	background: var(--zjk-color-bg);
	border-radius: var(--zjk-radius);
	overflow: hidden;
	box-shadow: var(--zjk-shadow);
}
.zjk-table th,
.zjk-table td {
	text-align: left;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid var(--zjk-color-border);
}
.zjk-table th {
	background: var(--zjk-color-cream);
	font-size: 0.82rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--zjk-color-text-muted);
}

/* ==========================================================================
   Toggle (z. B. Domain Auto-Verlängerung)
   ========================================================================== */
.zjk-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	cursor: pointer;
}

/* ==========================================================================
   Login-Screen (Vintage-Badge-Look erlaubt, siehe Plan Abschnitt 1)
   ========================================================================== */
.zjk-login-wrapper {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--zjk-color-navy);
	background-image: radial-gradient(circle at top, rgba(214,166,49,0.08), transparent 60%);
}
.zjk-login-box {
	background: var(--zjk-color-cream);
	border-radius: var(--zjk-radius);
	padding: 2.5rem;
	max-width: 380px;
	width: 100%;
	box-shadow: 0 8px 30px rgba(0,0,0,0.35);
	text-align: center;
}
.zjk-login-box img {
	max-width: 140px;
	margin-bottom: 1rem;
}
