/**
 * shivaspirit – moderneres WP-Admin & Login
 */

body.wp-admin,
body.login {
	--shiva-admin-accent: #2563eb;
	--shiva-admin-accent-hover: #1d4ed8;
	--shiva-admin-accent-soft: rgba(37, 99, 235, 0.12);
	--shiva-admin-radius: 10px;
	--shiva-admin-radius-sm: 6px;
	--shiva-admin-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
	--shiva-admin-border: #e2e8f0;
	--shiva-admin-surface: #ffffff;
	--shiva-admin-page-bg: #f1f5f9;
}

/* ——— WP Admin: Grundfläche & Typo ——— */
body.wp-admin {
	font-family: var(--shiva-admin-font);
	font-size: 14px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

body.wp-admin #wpwrap {
	background-color: var(--shiva-admin-page-bg);
}

body.wp-admin #wpcontent {
	padding-top: 8px;
}

body.wp-admin #wpbody-content {
	padding-bottom: 2rem;
}

body.wp-admin .wrap {
	margin: 0 20px 0 2px;
}

body.wp-admin .wrap > h1,
body.wp-admin .wrap > h2.wp-heading-inline {
	font-family: var(--shiva-admin-font);
	font-weight: 650;
	letter-spacing: -0.02em;
	font-size: 1.65rem;
	line-height: 1.25;
	margin-bottom: 0.35em;
}

body.wp-admin .subtitle,
body.wp-admin .wp-heading-inline + .page-title-action {
	margin-top: 0.25rem;
}

/* Admin-Bar */
#wpadminbar {
	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.08);
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

#wpadminbar .ab-item:hover,
#wpadminbar .ab-item:focus {
	color: var(--shiva-admin-accent) !important;
}

/* Seitenmenü */
#adminmenu .wp-submenu a:focus,
#adminmenu .wp-submenu a:hover,
#adminmenu a:hover,
#adminmenu li.menu-top > a:focus,
#adminmenu li.menu-top > a:hover {
	color: var(--shiva-admin-accent);
}

#adminmenu li.current a.menu-top,
#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu {
	border-left: 3px solid var(--shiva-admin-accent);
}

#adminmenu li.current a.menu-top,
#adminmenu li.wp-has-current-submenu .wp-submenu .wp-submenu-head,
#adminmenu li.wp-has-current-submenu.opensub a.wp-has-current-submenu {
	background: var(--shiva-admin-accent-soft);
}

#adminmenu .wp-submenu {
	border-radius: 0 var(--shiva-admin-radius-sm) var(--shiva-admin-radius-sm) 0;
	overflow: hidden;
}

/* Karten, Metaboxen, Dashboard */
body.wp-admin .postbox,
body.wp-admin .card,
body.wp-admin .welcome-panel,
body.wp-admin .stuffbox {
	border-radius: var(--shiva-admin-radius);
	border: 1px solid var(--shiva-admin-border);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
	background: var(--shiva-admin-surface);
}

body.wp-admin .postbox .postbox-header {
	border-bottom-color: var(--shiva-admin-border);
	border-radius: var(--shiva-admin-radius) var(--shiva-admin-radius) 0 0;
}

body.wp-admin .postbox .handle-order-higher,
body.wp-admin .postbox .handle-order-lower,
body.wp-admin .postbox .handlediv {
	border-radius: var(--shiva-admin-radius-sm);
}

/* Notices */
body.wp-admin .notice,
body.wp-admin div.error,
body.wp-admin div.updated {
	border-radius: var(--shiva-admin-radius-sm);
	border-left-width: 4px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
}

/* Tabs */
body.wp-admin .nav-tab-wrapper {
	border-bottom-color: var(--shiva-admin-border);
	gap: 4px;
	padding-top: 2px;
}

body.wp-admin .nav-tab {
	border-radius: var(--shiva-admin-radius-sm) var(--shiva-admin-radius-sm) 0 0;
	border: 1px solid transparent;
	border-bottom: none;
	font-weight: 500;
}

body.wp-admin .nav-tab:hover {
	background: rgba(255, 255, 255, 0.85);
	color: var(--shiva-admin-accent);
}

body.wp-admin .nav-tab-active,
body.wp-admin .nav-tab-active:hover {
	background: var(--shiva-admin-surface);
	border-color: var(--shiva-admin-border);
	border-bottom-color: var(--shiva-admin-surface);
}

/* Primär-Buttons (Backend) */
body.wp-admin .button-primary {
	background: var(--shiva-admin-accent);
	border-color: var(--shiva-admin-accent-hover);
	border-radius: var(--shiva-admin-radius-sm);
	text-shadow: none;
	box-shadow: none;
	font-weight: 500;
}

body.wp-admin .button-primary:hover,
body.wp-admin .button-primary:focus {
	background: var(--shiva-admin-accent-hover);
	border-color: #1e40af;
}

body.wp-admin .button,
body.wp-admin .button-secondary {
	border-radius: var(--shiva-admin-radius-sm);
}

/* Formularfelder */
body.wp-admin input[type="text"],
body.wp-admin input[type="search"],
body.wp-admin input[type="email"],
body.wp-admin input[type="url"],
body.wp-admin input[type="number"],
body.wp-admin input[type="password"],
body.wp-admin select,
body.wp-admin textarea {
	border-radius: var(--shiva-admin-radius-sm);
	border-color: #cbd5e1;
}

body.wp-admin input:focus,
body.wp-admin select:focus,
body.wp-admin textarea:focus {
	border-color: var(--shiva-admin-accent);
	box-shadow: 0 0 0 1px var(--shiva-admin-accent-soft);
}

body.wp-admin .form-table th {
	font-weight: 600;
	color: #334155;
}

/* Listen & Tabellen */
body.wp-admin .wp-list-table {
	border-radius: var(--shiva-admin-radius);
	border: 1px solid var(--shiva-admin-border);
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

body.wp-admin .wp-list-table thead th,
body.wp-admin .wp-list-table tfoot th {
	font-weight: 600;
	background: #f8fafc;
}

body.wp-admin .tablenav {
	margin: 10px 0 14px;
}

body.wp-admin .tablenav .button {
	border-radius: var(--shiva-admin-radius-sm);
}

body.wp-admin .subsubsub {
	font-weight: 500;
}

body.wp-admin .subsubsub a {
	border-radius: 999px;
	padding: 2px 8px;
}

body.wp-admin .subsubsub a.current {
	background: var(--shiva-admin-accent-soft);
	color: var(--shiva-admin-accent);
	font-weight: 600;
}

/* Medien, Filter-Leisten */
body.wp-admin .wp-filter {
	border-radius: var(--shiva-admin-radius);
	border: 1px solid var(--shiva-admin-border);
	background: var(--shiva-admin-surface);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

/* Block-Editor Rahmen */
body.wp-admin .interface-interface-skeleton__editor,
body.wp-admin .edit-post-fullscreen-mode-close.components-button {
	font-family: var(--shiva-admin-font);
}

body.wp-admin .interface-interface-skeleton__header {
	border-bottom-color: var(--shiva-admin-border);
}

/* Widget-Bereich (Classic) */
body.wp-admin .widgets-holder-wrap {
	border-radius: var(--shiva-admin-radius);
	border: 1px solid var(--shiva-admin-border);
	background: var(--shiva-admin-surface);
}

/* ——— Login ——— */
body.login {
	font-family: var(--shiva-admin-font);
	background: linear-gradient(160deg, #e8efff 0%, #f8fafc 42%, #eef2f7 100%);
	-webkit-font-smoothing: antialiased;
}

#login h1 a {
	background-size: contain;
	width: 100%;
	max-width: 280px;
	height: 72px;
	margin-bottom: 1.25rem;
}

#loginform,
#lostpasswordform,
#registerform {
	border: 1px solid var(--shiva-admin-border);
	border-radius: var(--shiva-admin-radius);
	box-shadow: 0 8px 32px rgba(15, 23, 42, 0.1);
	background: var(--shiva-admin-surface);
}

body.login .button-primary {
	background: var(--shiva-admin-accent);
	border-color: var(--shiva-admin-accent-hover);
	border-radius: var(--shiva-admin-radius-sm);
	text-shadow: none;
	box-shadow: none;
	font-weight: 600;
}

body.login .button-primary:hover,
body.login .button-primary:focus {
	background: var(--shiva-admin-accent-hover);
	border-color: #1e40af;
}

body.login input[type="text"],
body.login input[type="password"] {
	border-radius: var(--shiva-admin-radius-sm);
	border-color: #cbd5e1;
}

body.login #nav a,
body.login #backtoblog a {
	color: var(--shiva-admin-accent);
	font-weight: 500;
}

body.login #nav a:hover,
body.login #backtoblog a:hover {
	color: var(--shiva-admin-accent-hover);
}
