:root {
    --bg: #f4f7fb;
    --surface: #ffffff;
    --surface-soft: #f8fafc;
    --sidebar: #172436;
    --sidebar-2: #21354d;
    --text: #182233;
    --muted: #687386;
    --line: #dce4ee;
    --brand: #3e6278;
    --brand-deep: #273d55;
    --accent: #4d7e99;
    --success: #167b59;
    --warning: #b56a16;
    --danger: #b83b4d;
    --shadow: 0 18px 48px rgba(26, 43, 63, .09);
    --radius: 18px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--bg); }
body { margin: 0; color: var(--text); background: var(--bg); }
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: underline; }
button, input, select, textarea { font: inherit; }
button, .button, .primary-button, .ghost-button { min-height: 42px; border-radius: 11px; border: 0; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; font-weight: 700; cursor: pointer; transition: .18s ease; }
button, .button, .primary-button { background: var(--brand-deep); color: #fff; }
button:hover, .button:hover, .primary-button:hover { transform: translateY(-1px); text-decoration: none; box-shadow: 0 8px 20px rgba(39,61,85,.18); }
.ghost-button { background: var(--surface); color: var(--text); border: 1px solid var(--line); }
.small { min-height: 34px; padding: 0 10px; font-size: .85rem; }
.danger-button { background: #fff1f3; color: var(--danger); border: 1px solid #ffd3d9; }
.danger-link { background: none; color: var(--danger); padding: 0; min-height: auto; box-shadow: none; }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; }
.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 260px minmax(0,1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 22px 16px; background: linear-gradient(180deg,var(--sidebar),#111b29); color: #dce8f4; display: flex; flex-direction: column; z-index: 30; }
.brand { display: flex; align-items: center; gap: 12px; padding: 10px 8px 24px; color: #fff; font-weight: 800; letter-spacing: .02em; }
.brand:hover { text-decoration: none; }
.brand img { width: 44px; height: 44px; object-fit: contain; background: #fff; border-radius: 13px; padding: 5px; }
.brand span { font-size: 1.15rem; }
.admin-nav { display: grid; gap: 5px; }
.admin-nav a { display: flex; align-items: center; gap: 11px; color: #c8d5e3; padding: 11px 12px; border-radius: 11px; font-size: .95rem; }
.admin-nav a:hover { background: rgba(255,255,255,.08); color: #fff; text-decoration: none; }
.sidebar-bottom { margin-top: auto; display: grid; gap: 12px; padding: 18px 8px 4px; border-top: 1px solid rgba(255,255,255,.1); }
.sidebar-bottom > a { color: #91a8bd; font-size: .78rem; }
.user-chip { display: grid; gap: 2px; }
.user-chip span { font-weight: 700; color: #fff; }
.user-chip small { color: #91a8bd; overflow: hidden; text-overflow: ellipsis; }
.link-button { background: none; color: #c8d5e3; min-height: auto; padding: 0; font-weight: 600; }
.admin-main { min-width: 0; }
.topbar { height: 76px; padding: 0 32px; background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 16px; position: sticky; top: 0; z-index: 20; backdrop-filter: blur(14px); }
.topbar > div { display: grid; gap: 2px; }
.topbar span { color: var(--muted); font-size: .78rem; }
.topbar .ghost-button { margin-left: auto; }
.menu-toggle { display: none; background: var(--surface-soft); color: var(--text); border: 1px solid var(--line); }
.content { padding: 34px; max-width: 1500px; margin: 0 auto; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; margin-bottom: 26px; }
.page-heading h1 { margin: 4px 0 6px; font-size: clamp(1.7rem,2.6vw,2.4rem); letter-spacing: -.04em; }
.page-heading p, .muted { margin: 0; color: var(--muted); }
.eyebrow { color: var(--accent); font-size: .76rem; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
.stat-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin-bottom: 22px; }
.stat-card, .panel, .table-card, .seo-hero, .check-summary { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.stat-card { padding: 22px; display: grid; gap: 6px; }
.stat-card > span { color: var(--muted); font-size: .86rem; font-weight: 650; }
.stat-card strong { font-size: 2rem; letter-spacing: -.04em; }
.stat-card small { color: var(--muted); }
.panel-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-bottom: 22px; }
.panel { padding: 24px; }
.panel h2 { margin: 0 0 8px; font-size: 1.08rem; }
.panel p { color: var(--muted); line-height: 1.65; }
.panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.legal-grid { grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); }
.table-card { overflow: auto; }
table { border-collapse: collapse; width: 100%; min-width: 760px; }
th, td { padding: 15px 18px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
th { color: var(--muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .06em; background: var(--surface-soft); }
td small { display: block; color: var(--muted); margin-top: 4px; }
tr:last-child td { border-bottom: 0; }
.actions { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.actions form { margin: 0; }
.actions button { background: none; color: var(--danger); padding: 0; min-height: auto; box-shadow: none; }
.empty-row { padding: 34px; text-align: center; color: var(--muted); }
.badge { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; font-size: .76rem; font-weight: 800; background: #eef2f6; color: var(--muted); }
.badge.published { background: #e8f7f1; color: var(--success); }
.badge.draft { background: #fff1eb; color: var(--warning); }
.form-panel { display: grid; gap: 16px; }
.form-panel label, .stack-form label, .two-col-form label, .redirect-form label { display: grid; gap: 7px; font-size: .86rem; font-weight: 700; color: #364153; }
input, select, textarea { width: 100%; border: 1px solid #cfd9e5; border-radius: 10px; padding: 11px 12px; color: var(--text); background: #fff; outline: 0; transition: .15s ease; }
input:focus, select:focus, textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(77,126,153,.13); }
textarea { resize: vertical; line-height: 1.55; }
label small { font-weight: 500; color: var(--muted); }
.check { display: flex !important; grid-template-columns: none !important; align-items: center; gap: 9px !important; cursor: pointer; }
.check input { width: 17px; height: 17px; accent-color: var(--brand-deep); }
.two-col-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-actions { grid-column: 1/-1; }
.editor-layout { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 20px; align-items: start; }
.editor-side { display: grid; gap: 20px; position: sticky; top: 98px; }
.inline-settings { display: flex; flex-wrap: wrap; gap: 24px; margin-bottom: 18px; }
.section-list { display: grid; gap: 16px; }
.legal-section { display: grid; gap: 15px; }
.section-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.section-toolbar > div { display: flex; gap: 6px; }
.drag-handle { font-weight: 800; color: var(--muted); }
.sticky-actions { position: sticky; bottom: 16px; margin-top: 20px; display: flex; justify-content: space-between; gap: 12px; background: rgba(255,255,255,.94); backdrop-filter: blur(10px); border: 1px solid var(--line); border-radius: 15px; padding: 12px; box-shadow: var(--shadow); }
.redirect-form { display: grid; grid-template-columns: 1fr 1.4fr 180px auto; gap: 12px; align-items: end; }
.seo-hero { display: grid; grid-template-columns: 180px 1fr; gap: 28px; align-items: center; padding: 28px; margin-bottom: 22px; }
.score-ring { --score: 0; width: 150px; aspect-ratio: 1; border-radius: 50%; display: grid; place-content: center; text-align: center; background: radial-gradient(circle at center,#fff 56%,transparent 57%), conic-gradient(var(--brand) calc(var(--score)*1%),#e9eef4 0); }
.score-ring strong { font-size: 2rem; }
.score-ring span { color: var(--muted); font-size: .78rem; }
.status-strip { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.status-strip span { border-radius: 999px; padding: 7px 10px; font-weight: 750; font-size: .82rem; }
.status-strip .critical { background: #fff0f2; color: var(--danger); }
.status-strip .recommend { background: #fff5e8; color: var(--warning); }
.status-strip .good { background: #e8f7f1; color: var(--success); }
.check-summary { padding: 20px 24px; display: grid; gap: 4px; margin-bottom: 18px; border-left: 5px solid var(--success); }
.check-summary.warn { border-left-color: var(--warning); }
.check-summary span { color: var(--muted); }
.role-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(320px,1fr)); gap: 18px; }
.permission-list { display: grid; gap: 8px; margin: 8px 0 18px; }
.permission-list h3 { margin: 12px 0 0; text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; color: var(--muted); }
.permission-list small { margin-left: auto; }
.role-form { display: flex; align-items: center; gap: 12px; }
.role-form > div { display: flex; flex-wrap: wrap; gap: 8px 14px; }
.wrap-cell { max-width: 520px; overflow-wrap: anywhere; }
.alert { border-radius: 12px; padding: 13px 15px; margin-bottom: 18px; font-weight: 650; }
.alert.error { background: #fff0f2; color: #8e2537; border: 1px solid #ffd0d8; }
.alert.success { background: #eaf8f3; color: #126749; border: 1px solid #c7eadc; }
.alert.warning { background:#fff8e8; color:#775600; border:1px solid #edd69d; }
code { background: #eef2f6; border-radius: 6px; padding: 2px 6px; }
.update-candidate { margin-top: 18px; }
.auth-body { min-height: 100vh; background: radial-gradient(circle at 10% 5%,rgba(77,126,153,.18),transparent 36%),linear-gradient(145deg,#eff4f8,#f8fafc); display: grid; place-items: center; padding: 24px; }
.auth-shell { width: min(100%,440px); }
.auth-card { background: rgba(255,255,255,.95); border: 1px solid rgba(207,217,229,.9); box-shadow: 0 28px 75px rgba(31,52,76,.16); border-radius: 24px; padding: 34px; }
.auth-logo { width: 68px; height: 68px; display: grid; place-items: center; border-radius: 18px; background: #f6f9fc; border: 1px solid var(--line); margin-bottom: 24px; }
.auth-logo img { width: 54px; height: 54px; object-fit: contain; }
.auth-card h1 { margin: 0 0 8px; font-size: 1.8rem; letter-spacing: -.04em; }
.stack-form { display: grid; gap: 15px; margin-top: 24px; }
.form-note { text-align: center; color: var(--muted); font-size: .9rem; }
.powered { margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--line); text-align: center; font-size: .78rem; }
.powered a { color: var(--muted); }
@media (max-width: 1050px) {
    .stat-grid { grid-template-columns: repeat(2,1fr); }
    .editor-layout { grid-template-columns: 1fr; }
    .editor-side { position: static; }
    .redirect-form { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 820px) {
    .admin-shell { grid-template-columns: 1fr; }
    .sidebar { position: fixed; left: 0; transform: translateX(-103%); width: 260px; transition: transform .2s ease; box-shadow: 20px 0 60px rgba(0,0,0,.22); }
    .sidebar.open { transform: translateX(0); }
    .menu-toggle { display: inline-flex; }
    .topbar { padding: 0 18px; }
    .content { padding: 24px 18px; }
    .page-heading { align-items: flex-start; flex-direction: column; }
    .panel-grid, .two-col-form { grid-template-columns: 1fr; }
    .form-actions { grid-column: auto; }
    .seo-hero { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .stat-grid { grid-template-columns: 1fr; }
    .auth-card { padding: 24px; }
    .topbar .ghost-button { display: none; }
    .redirect-form { grid-template-columns: 1fr; }
    .sticky-actions { flex-direction: column; }
}
.social-preview { display:grid; gap:10px; }.social-preview-image { min-height:150px; border-radius:12px; border:1px solid var(--line); background:#eef3f7 center/cover no-repeat; display:grid; place-items:center; color:var(--muted); font-size:.8rem; overflow:hidden; }.social-preview strong { font-size:1rem; }.social-preview p { margin:0; font-size:.88rem; }.social-preview small { color:var(--muted); }.field-hidden { display:none !important; }

/* Plugin manager */
.plugin-upload-panel { margin-bottom: 22px; }
.plugin-upload-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; align-items: end; margin-top: 18px; }
.plugin-dropzone { min-height: 132px; border: 1.5px dashed #bcc9d7; border-radius: 16px; background: var(--surface-soft); padding: 20px; display: grid; grid-template-columns: auto 1fr; column-gap: 14px; row-gap: 3px; align-items: center; cursor: pointer; }
.plugin-dropzone:hover { border-color: var(--accent); background: #f4f8fb; }
.plugin-dropzone input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.plugin-drop-icon { grid-row: 1 / span 3; width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: #e7eef4; color: var(--brand-deep); font-size: 1.45rem; font-weight: 900; }
.plugin-dropzone strong { color: var(--text); }
.plugin-dropzone small { color: var(--muted); font-weight: 500; }
.plugin-file-name { color: var(--brand); font-size: .82rem; font-weight: 750; margin-top: 4px; overflow-wrap: anywhere; }
.plugin-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(320px,1fr)); gap: 14px; margin-top: 18px; }
.plugin-card { border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); padding: 18px; display: grid; gap: 18px; }
.plugin-card-top { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 14px; align-items: start; }
.plugin-icon { width: 44px; height: 44px; border-radius: 13px; display: grid; place-items: center; background: #e8eef4; color: var(--brand-deep); font-weight: 900; }
.plugin-meta { min-width: 0; }
.plugin-title-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.plugin-title-row h3 { margin: 0; font-size: 1rem; }
.plugin-meta p { margin: 6px 0 0; color: var(--muted); font-size: .83rem; overflow-wrap: anywhere; }
.plugin-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; border-top: 1px solid var(--line); }
.plugin-card-footer form { margin: 0; }
.plugin-package-help { margin-top: 22px; }
.plugin-package-help pre { margin: 16px 0 0; padding: 18px; overflow: auto; border-radius: 14px; background: #111b29; color: #dfeaf5; line-height: 1.55; }
.plugin-package-help pre code { background: transparent; padding: 0; color: inherit; }
@media (max-width: 720px) {
    .plugin-upload-form { grid-template-columns: 1fr; }
    .plugin-card-footer { align-items: flex-start; flex-direction: column; }
}

/* Update center */
.update-page-head { gap: 18px; }
.update-version-badge { display:inline-flex; align-items:center; min-height:34px; padding:0 12px; border-radius:999px; background:#e8eef4; color:var(--brand-deep); font-weight:850; }
.update-status-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.admin-section { margin-bottom:22px; }
.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.section-heading h2 { margin:3px 0 0; }
.section-heading > span { color:var(--muted); font-size:.84rem; }
.update-fixed-endpoint { display:grid; gap:4px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); margin-bottom:18px; overflow-wrap:anywhere; }
.update-fixed-endpoint span, .update-fixed-endpoint small { color:var(--muted); }
.update-fixed-endpoint strong { font-size:.92rem; }
.update-safe-note { display:grid; gap:4px; padding:14px 16px; border-radius:14px; background:#eef6f8; border:1px solid #d3e6eb; margin:16px 0; }
.update-safe-note span { color:var(--muted); font-size:.88rem; line-height:1.5; }
.update-connect-form { max-width:760px; }
.update-inline-alert { margin-top:16px; }
.update-connection-meta { display:flex; flex-wrap:wrap; gap:10px 18px; margin:12px 0 16px; color:var(--muted); font-size:.86rem; }
.update-release-meta { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:18px 0; }
.update-release-meta > div { display:grid; gap:5px; padding:14px; border-radius:14px; border:1px solid var(--line); background:var(--surface-soft); }
.update-release-meta span { color:var(--muted); font-size:.78rem; }
.update-release-meta strong { font-size:1rem; overflow-wrap:anywhere; }
.update-notes { margin:16px 0; padding:16px; border-radius:14px; background:var(--surface-soft); border:1px solid var(--line); }
.update-notes ul { margin:10px 0 0; padding-left:20px; }
.update-notes li + li { margin-top:5px; }
.update-actions form { margin:0; }
.update-upload-panel .stack-form { margin-top:0; }
.update-dropzone { min-height:150px; border:1.5px dashed #bcc9d7; border-radius:16px; background:var(--surface-soft); padding:20px; display:grid !important; grid-template-columns:auto 1fr; column-gap:14px; row-gap:5px; align-items:center; cursor:pointer; }
.update-dropzone:hover { border-color:var(--accent); background:#f4f8fb; }
.update-dropzone input { position:absolute; inline-size:1px; block-size:1px; opacity:0; pointer-events:none; }
.update-drop-icon { grid-row:1 / span 4; width:54px; height:54px; border-radius:15px; background:#e7eef4; color:var(--brand-deep); display:grid; place-items:center; font-weight:900; font-size:.82rem; letter-spacing:.06em; }
.update-dropzone strong { color:var(--text); }
.update-dropzone small { color:var(--muted); font-weight:500; }
.update-file-name { color:var(--brand); font-size:.82rem; font-weight:750; overflow-wrap:anywhere; }
.update-backup-list { display:grid; gap:10px; }
.update-backup-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.update-backup-card > div { display:grid; gap:4px; min-width:0; }
.update-backup-card span { color:var(--muted); font-size:.82rem; overflow-wrap:anywhere; }
.update-backup-card form { margin:0; flex:0 0 auto; }
.update-guard-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.update-guard-grid article { display:grid; gap:5px; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.update-guard-grid span { color:var(--muted); font-size:.84rem; line-height:1.5; }
@media (max-width: 1050px) {
    .update-status-grid, .update-release-meta { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
    .update-status-grid, .update-release-meta, .update-guard-grid { grid-template-columns:1fr; }
    .update-backup-card { align-items:flex-start; flex-direction:column; }
}

/* RBAC / Benutzergruppen */
.role-page-heading { align-items:center; }
.role-stat-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.role-stat-card { display:grid; gap:5px; padding:18px 20px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:0 12px 32px rgba(26,43,63,.06); }
.role-stat-card > span { color:var(--muted); font-size:.78rem; font-weight:750; }
.role-stat-card strong { font-size:1.65rem; letter-spacing:-.04em; }
.role-stat-card small { color:var(--muted); }
.role-create-panel { margin-bottom:26px; }
.role-panel-head h2 { margin-top:4px; }
.role-editor-form { margin-top:18px; }
.permission-section { display:grid; gap:14px; padding-top:4px; }
.permission-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.permission-section-head > div:first-child { display:grid; gap:3px; }
.permission-section-head > div:first-child > strong { font-size:.96rem; }
.permission-section-head > div:first-child > span { color:var(--muted); font-size:.82rem; }
.permission-actions { display:flex; flex-wrap:wrap; gap:8px; }
.permission-module-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px; }
.permission-module-card { overflow:hidden; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.permission-module-card > header { display:flex; align-items:center; gap:10px; padding:13px 14px; border-bottom:1px solid var(--line); background:#f4f7fa; }
.permission-module-card > header > div:last-child { display:grid; gap:1px; min-width:0; }
.permission-module-card > header strong { font-size:.88rem; text-transform:capitalize; }
.permission-module-card > header span { color:var(--muted); font-size:.72rem; }
.permission-module-icon { width:32px; height:32px; flex:0 0 32px; border-radius:10px; display:grid; place-items:center; background:#e5edf4; color:var(--brand-deep); font-size:.76rem; font-weight:900; }
.permission-options { display:grid; }
.permission-option { display:grid !important; grid-template-columns:auto minmax(0,1fr) !important; gap:10px !important; align-items:start; padding:11px 13px; border-bottom:1px solid rgba(220,228,238,.8); cursor:pointer; transition:background .15s ease; }
.permission-option:last-child { border-bottom:0; }
.permission-option:hover { background:#fff; }
.permission-option input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--brand-deep); }
.permission-option > span { display:grid; gap:2px; min-width:0; }
.permission-option strong { color:var(--text); font-size:.83rem; line-height:1.35; }
.permission-option small { color:var(--muted); font-size:.72rem; font-weight:550; overflow-wrap:anywhere; }
.permission-option:has(input:checked) { background:#eef5f8; }
.permission-module-card.is-locked { opacity:.84; }
.role-form-footer { display:flex; justify-content:flex-end; padding-top:2px; }
.role-existing-section { margin-top:4px; }
.role-list-heading { align-items:flex-end; margin-bottom:14px; }
.role-list { display:grid; gap:12px; }
.role-management-card { padding:0; overflow:hidden; }
.role-management-card[open] { box-shadow:0 18px 48px rgba(26,43,63,.1); }
.role-summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 20px; cursor:pointer; user-select:none; }
.role-summary::-webkit-details-marker { display:none; }
.role-summary:hover { background:var(--surface-soft); }
.role-summary-main { display:flex; align-items:center; gap:13px; min-width:0; }
.role-avatar { width:42px; height:42px; flex:0 0 42px; border-radius:13px; display:grid; place-items:center; background:#e7eef4; color:var(--brand-deep); font-weight:900; }
.role-summary-copy { display:grid; gap:3px; min-width:0; }
.role-summary-copy > strong { font-size:.98rem; }
.role-summary-copy > small { color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:540px; }
.role-summary-meta { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:7px; }
.role-expand-label { color:var(--brand); font-size:.78rem; font-weight:800; padding-left:4px; }
.role-expand-label::after { content:'⌄'; display:inline-block; margin-left:6px; transition:transform .18s ease; }
.role-management-card[open] .role-expand-label::after { transform:rotate(180deg); }
.role-details-body { padding:20px; border-top:1px solid var(--line); background:#fbfcfe; }
.role-details-body .role-editor-form { margin-top:0; }
.role-danger-zone { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:18px; padding:15px 16px; border:1px solid #ffd7dc; border-radius:14px; background:#fff7f8; }
.role-danger-zone > div { display:grid; gap:3px; }
.role-danger-zone > div > strong { color:var(--danger); font-size:.88rem; }
.role-danger-zone > div > span { color:var(--muted); font-size:.78rem; }
.role-danger-zone form { margin:0; flex:0 0 auto; }
@media (max-width: 900px) {
    .role-stat-grid { grid-template-columns:1fr; }
    .role-summary { align-items:flex-start; flex-direction:column; }
    .role-summary-meta { justify-content:flex-start; }
    .role-summary-copy > small { max-width:none; white-space:normal; }
}
@media (max-width: 680px) {
    .permission-section-head, .role-danger-zone { align-items:flex-start; flex-direction:column; }
    .permission-actions { width:100%; }
    .permission-actions .ghost-button { flex:1; }
    .permission-module-grid { grid-template-columns:1fr; }
    .role-form-footer button, .role-danger-zone form, .role-danger-zone button { width:100%; }
}

/* Dashboard 1.0.12 */
.dashboard-heading { align-items:center; }
.dashboard-stat-grid { margin-bottom:18px; }
.dashboard-stat-card { position:relative; overflow:hidden; min-height:150px; }
.dashboard-stat-card::after { content:''; position:absolute; width:90px; height:90px; right:-35px; bottom:-42px; border-radius:999px; background:rgba(77,126,153,.07); }
.dashboard-stat-card.has-attention::after { background:rgba(181,106,22,.09); }
.dashboard-main-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:18px; margin-bottom:18px; }
.dashboard-secondary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:22px; }
.dashboard-update-panel, .dashboard-quick-panel, .dashboard-info-panel { min-width:0; }
.dashboard-update-panel { position:relative; overflow:hidden; }
.dashboard-update-panel.has-update { border-color:#bcded0; box-shadow:0 18px 48px rgba(22,123,89,.1); }
.dashboard-update-panel.has-update::after { content:''; position:absolute; width:180px; height:180px; right:-70px; top:-86px; border-radius:50%; background:rgba(22,123,89,.06); pointer-events:none; }
.dashboard-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; position:relative; z-index:1; }
.dashboard-panel-head h2 { margin:4px 0 0; font-size:1.12rem; }
.dashboard-status-pill { display:inline-flex; align-items:center; min-height:29px; padding:0 10px; border-radius:999px; background:#eef2f6; color:var(--muted); font-size:.74rem; font-weight:850; white-space:nowrap; }
.dashboard-status-pill.is-current { background:#e8f7f1; color:var(--success); }
.dashboard-status-pill.is-update { background:#e3f6ee; color:#0d7250; }
.dashboard-status-pill.is-error { background:#fff0f2; color:var(--danger); }
.dashboard-version-row { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:16px; padding:17px 18px; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); position:relative; z-index:1; }
.dashboard-version-row > div { display:grid; gap:4px; }
.dashboard-version-row span { color:var(--muted); font-size:.78rem; font-weight:650; }
.dashboard-version-row strong { font-size:1.42rem; letter-spacing:-.035em; }
.dashboard-version-arrow { width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:#e7eef4; color:var(--brand-deep) !important; font-size:1rem !important; font-weight:900 !important; }
.dashboard-update-panel > p { margin:16px 0; line-height:1.6; }
.dashboard-panel-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; position:relative; z-index:1; }
.dashboard-panel-actions small { color:var(--muted); }
.dashboard-update-footer { margin-top:22px; padding-top:2px; }
.dashboard-quick-list { display:grid; gap:8px; }
.dashboard-quick-list > a { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 14px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); color:var(--text); transition:.16s ease; }
.dashboard-quick-list > a:hover { background:#fff; border-color:#c5d2df; transform:translateY(-1px); text-decoration:none; box-shadow:0 8px 22px rgba(26,43,63,.06); }
.dashboard-quick-list > a > span { display:grid; gap:3px; min-width:0; }
.dashboard-quick-list strong { font-size:.88rem; }
.dashboard-quick-list small { color:var(--muted); font-size:.76rem; font-weight:500; }
.dashboard-quick-list b { color:var(--brand); font-size:1rem; }
.dashboard-info-panel > h2 { margin:4px 0 12px; }
.dashboard-info-panel > p { margin-bottom:0; }
.dashboard-progress-row { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin:14px 0 9px; }
.dashboard-progress-row > div { display:grid; gap:2px; }
.dashboard-progress-row strong { font-size:1rem; }
.dashboard-progress-row span { color:var(--muted); font-size:.8rem; }
.dashboard-progress-row > span { font-weight:800; color:var(--brand-deep); }
.dashboard-progress-native { width:100%; height:9px; display:block; border:0; border-radius:999px; overflow:hidden; appearance:none; background:#e9eef4; }
.dashboard-progress-native::-webkit-progress-bar { background:#e9eef4; border-radius:999px; }
.dashboard-progress-native::-webkit-progress-value { background:linear-gradient(90deg,var(--brand),var(--accent)); border-radius:999px; }
.dashboard-progress-native::-moz-progress-bar { background:linear-gradient(90deg,var(--brand),var(--accent)); border-radius:999px; }
.dashboard-system-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.dashboard-system-links a { min-height:34px; display:inline-flex; align-items:center; padding:0 11px; border-radius:10px; background:var(--surface-soft); border:1px solid var(--line); font-size:.8rem; font-weight:750; }
.dashboard-system-links a:hover { text-decoration:none; background:#fff; }

/* Update-Hinweis in der Admin-Navigation */
.admin-nav-update-link { position:relative; }
.nav-update-badge { margin-left:auto; min-width:30px; height:24px; flex:0 0 auto; padding:0 6px; display:grid; place-items:center; border-radius:999px; background:#ffcf59; color:#382600; font-size:.72rem; font-weight:950; line-height:1; box-shadow:0 0 0 0 rgba(255,207,89,.42); animation:navUpdatePulse 1.35s ease-in-out infinite; }
@keyframes navUpdatePulse {
    0%, 100% { transform:scale(1); box-shadow:0 0 0 0 rgba(255,207,89,.4); }
    50% { transform:scale(1.08); box-shadow:0 0 0 7px rgba(255,207,89,0); }
}
@media (prefers-reduced-motion: reduce) {
    .nav-update-badge { animation:none; }
}
@media (max-width: 1050px) {
    .dashboard-main-grid { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
    .dashboard-secondary-grid { grid-template-columns:1fr; }
    .dashboard-version-row { grid-template-columns:1fr; }
    .dashboard-version-arrow { transform:rotate(90deg); }
    .dashboard-panel-actions { align-items:flex-start; flex-direction:column; }
    .dashboard-panel-actions .primary-button, .dashboard-panel-actions .ghost-button { width:100%; }
}

/* SEO Suite 1.1 */
.seo-page-heading { align-items:center; }
.seo-overview-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr); gap:18px; margin-bottom:18px; }
.seo-score-card, .seo-health-card, .seo-audit-hero { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }
.seo-score-card { display:grid; grid-template-columns:auto minmax(0,1fr); gap:24px; align-items:center; padding:26px; }
.seo-score-card h2, .seo-health-card h2, .seo-audit-hero h2 { margin:4px 0 7px; }
.seo-score-card p, .seo-audit-hero p { margin:0; color:var(--muted); line-height:1.55; }
.seo-health-card { padding:24px; display:grid; gap:18px; }
.seo-health-head { display:flex; justify-content:space-between; gap:14px; align-items:start; }
.seo-health-head strong { font-size:2rem; letter-spacing:-.04em; }
.seo-health-bars { display:grid; gap:13px; }
.seo-health-bars > div { display:grid; gap:7px; }
.seo-health-bars span { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:.84rem; }
.seo-health-bars span small { color:var(--muted); }
.seo-health-bars i { height:8px; overflow:hidden; border-radius:999px; background:#e9eef4; }
.seo-health-bars em { display:block; height:100%; width:0; border-radius:inherit; background:var(--brand); transition:width .35s ease; }
.seo-health-bars > div:nth-child(2) em { background:#c9822f; }
.seo-health-bars > div:nth-child(3) em { background:#c74b5c; }
.seo-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.seo-stat-card { min-width:0; padding:18px 20px; display:grid; gap:5px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:0 12px 32px rgba(26,43,63,.06); color:var(--text); }
a.seo-stat-card:hover { text-decoration:none; border-color:#c7d3df; transform:translateY(-1px); }
.seo-stat-card > span { color:var(--muted); font-size:.78rem; font-weight:750; }
.seo-stat-card strong { font-size:1.7rem; letter-spacing:-.04em; overflow-wrap:anywhere; }
.seo-stat-card small { color:var(--muted); line-height:1.4; }
.seo-date-value { font-size:1.25rem !important; }
.seo-task-panel, .seo-pages-panel { margin-bottom:18px; }
.seo-task-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.seo-task-card { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); color:var(--text); }
.seo-task-card:hover { text-decoration:none; transform:translateY(-1px); }
.seo-task-card > span:nth-child(2) { display:grid; gap:4px; min-width:0; }
.seo-task-card small { color:var(--muted); line-height:1.45; }
.seo-task-card > b { font-size:1.15rem; }
.seo-task-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; font-weight:900; background:#e8eef4; color:var(--brand-deep); }
.seo-task-card--critical .seo-task-icon { background:#fff0f2; color:var(--danger); }
.seo-task-card--recommendation .seo-task-icon { background:#fff5e8; color:var(--warning); }
.seo-task-card--good .seo-task-icon { background:#e8f7f1; color:var(--success); }
.seo-page-list { display:grid; gap:10px; }
.seo-page-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-page-score { width:48px; height:48px; display:grid; place-items:center; border-radius:14px; background:#eef2f6; color:var(--text); font-weight:900; }
.seo-page-score.is-good { background:#e8f7f1; color:var(--success); }
.seo-page-score.is-warn { background:#fff5e8; color:var(--warning); }
.seo-page-score.is-bad { background:#fff0f2; color:var(--danger); }
.seo-page-copy { display:grid; gap:3px; min-width:0; }
.seo-page-copy small { color:var(--muted); overflow-wrap:anywhere; }
.seo-page-flags { display:flex; flex-wrap:wrap; gap:6px; margin-top:5px; }
.seo-page-flags span { padding:4px 7px; border-radius:999px; font-size:.7rem; font-weight:800; }
.seo-page-flags .critical { background:#fff0f2; color:var(--danger); }
.seo-page-flags .recommend { background:#fff5e8; color:var(--warning); }
.seo-page-flags .good { background:#e8f7f1; color:var(--success); }
.seo-page-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.seo-audit-hero { display:grid; grid-template-columns:auto minmax(0,1fr); gap:24px; align-items:center; padding:26px; margin-bottom:18px; }
.seo-audit-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr); gap:18px; align-items:start; }
.seo-audit-side { display:grid; gap:18px; }
.seo-check-list { display:grid; gap:9px; }
.seo-check-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:13px 14px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); }
.seo-check-row > div { display:grid; gap:3px; }
.seo-check-row small { color:var(--muted); line-height:1.4; }
.seo-check-row > b { font-size:.82rem; color:var(--muted); }
.seo-check-mark { width:30px; height:30px; display:grid; place-items:center; border-radius:9px; font-weight:900; }
.seo-check-row.is-ok .seo-check-mark { background:#e8f7f1; color:var(--success); }
.seo-check-row.is-critical .seo-check-mark { background:#fff0f2; color:var(--danger); }
.seo-check-row.is-recommend .seo-check-mark { background:#fff5e8; color:var(--warning); }
.seo-metric-list { display:grid; gap:13px; }
.seo-metric-list h2 { margin:0; }
.seo-metric-list > div { display:flex; justify-content:space-between; gap:14px; padding-top:11px; border-top:1px solid var(--line); }
.seo-metric-list > div span { color:var(--muted); font-size:.82rem; }
.seo-metric-list > div strong { text-align:right; font-size:.86rem; }
.wrap-text { overflow-wrap:anywhere; word-break:break-word; }
.seo-serp-preview { display:grid; gap:6px; }
.seo-serp-preview > a { color:#1a0dab; font-size:1.08rem; font-weight:650; }
.seo-serp-preview > small { color:#33833a; overflow-wrap:anywhere; }
.seo-serp-preview > p { margin:0; color:#4d5156; font-size:.86rem; line-height:1.45; }
.seo-filter-row { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.seo-filter-row a { padding:8px 11px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--muted); font-size:.8rem; font-weight:800; }
.seo-filter-row a:hover, .seo-filter-row a.is-active { text-decoration:none; color:var(--brand-deep); border-color:#bfcdd9; background:#eef4f7; }
@media (max-width:1050px) {
    .seo-overview-grid, .seo-audit-layout { grid-template-columns:1fr; }
    .seo-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
    .seo-score-card, .seo-audit-hero { grid-template-columns:1fr; }
    .seo-task-grid, .seo-stat-grid { grid-template-columns:1fr; }
    .seo-page-row { grid-template-columns:auto minmax(0,1fr); }
    .seo-page-actions { grid-column:1/-1; justify-content:flex-start; }
}

/* SEO-Suite 1.0.14 */
.seo-stat-grid--wide { grid-template-columns:repeat(4,minmax(0,1fr)); }
.seo-technical-panel { margin-bottom:18px; }
.seo-technical-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.seo-technical-check { display:grid; grid-template-columns:auto minmax(0,1fr); gap:11px; align-items:start; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-technical-check > span { width:32px; height:32px; display:grid; place-items:center; border-radius:10px; font-weight:900; }
.seo-technical-check > div { display:grid; gap:3px; }
.seo-technical-check small { color:var(--muted); line-height:1.45; }
.seo-technical-check.is-ok > span { background:#e8f7f1; color:var(--success); }
.seo-technical-check.is-warn > span { background:#fff5e8; color:var(--warning); }
.seo-technical-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.seo-technical-meta span { padding:7px 10px; border-radius:999px; background:#f1f5f8; color:var(--muted); font-size:.78rem; }
.seo-technical-meta b { color:var(--text); }
.seo-page-flags .keyword { background:#edf0ff; color:#5548a8; }
.seo-editor-panel .panel-head { margin-bottom:12px; }
.field-with-counter { position:relative; }
.field-with-counter > input, .field-with-counter > textarea { padding-right:64px; }
.field-with-counter > span { position:absolute; right:10px; top:50%; transform:translateY(-50%); padding:3px 6px; border-radius:8px; background:#f2f5f8; color:var(--muted); font-size:.7rem; font-weight:800; pointer-events:none; }
.field-with-counter--textarea > span { top:auto; bottom:10px; transform:none; }
.field-with-counter > span.is-good { color:var(--success); background:#e8f7f1; }
.field-with-counter > span.is-warn { color:var(--warning); background:#fff5e8; }
.seo-keyword-preview { display:grid; gap:8px; padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-keyword-preview > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:8px; border-top:1px solid var(--line); }
.seo-keyword-preview > div span { color:var(--muted); font-size:.78rem; }
.seo-keyword-preview > div strong { font-size:.78rem; }
.seo-keyword-preview strong.is-good { color:var(--success); }
.seo-keyword-preview strong.is-warn { color:var(--warning); }
.seo-heading-counts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:12px 0; }
.seo-heading-counts span { display:grid; place-items:center; gap:2px; padding:10px 6px; border:1px solid var(--line); border-radius:11px; background:var(--surface-soft); color:var(--muted); font-size:.72rem; }
.seo-heading-counts b { color:var(--text); font-size:1.05rem; }
.seo-heading-audit p, .seo-image-audit p { margin:8px 0 0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.seo-image-score { display:flex; align-items:end; gap:8px; margin-top:10px; }
.seo-image-score strong { font-size:1.55rem; letter-spacing:-.04em; }
.seo-image-score span { color:var(--muted); font-size:.78rem; padding-bottom:3px; }
@media (max-width:1050px) {
    .seo-stat-grid--wide, .seo-technical-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
    .seo-stat-grid--wide, .seo-technical-grid { grid-template-columns:1fr; }
}

/* SEO-Suite 1.0.15 */
.seo-tech-kpi-grid { margin-top:-4px; }
.seo-tech-section { margin-bottom:18px; }
.seo-technical-summary-grid { margin-bottom:18px; }
.seo-tech-list { display:grid; gap:10px; }
.seo-tech-issue { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:14px 15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-tech-issue > div { display:grid; gap:4px; min-width:0; }
.seo-tech-issue small { color:var(--muted); line-height:1.45; overflow-wrap:anywhere; }
.seo-tech-issue > b { font-size:.75rem; text-transform:uppercase; letter-spacing:.04em; color:var(--muted); }
.seo-tech-mark { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; font-weight:900; background:#edf2f6; color:var(--brand-deep); }
.seo-tech-issue.is-warn .seo-tech-mark { background:#fff5e8; color:var(--warning); }
.seo-tech-issue.is-critical .seo-tech-mark { background:#fff0f2; color:var(--danger); }
.seo-audit-empty { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; align-items:center; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-audit-empty > span { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; font-weight:900; background:#eef2f6; }
.seo-audit-empty > div { display:grid; gap:3px; }
.seo-audit-empty small { color:var(--muted); line-height:1.45; }
.seo-audit-empty.is-good > span { background:#e8f7f1; color:var(--success); }
.seo-tech-cluster { display:grid; gap:12px; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.seo-tech-cluster-head { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; }
.seo-tech-cluster-head > div { display:grid; gap:3px; }
.seo-tech-cluster-head code { max-width:65%; overflow-wrap:anywhere; text-align:right; color:var(--muted); font-size:.74rem; }
.seo-tech-cluster-head > b { padding:5px 8px; border-radius:999px; background:#edf0ff; color:#5548a8; font-size:.76rem; }
.seo-tech-page-chips { display:flex; flex-wrap:wrap; gap:7px; }
.seo-tech-page-chips a { padding:6px 9px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--brand-deep); font-size:.76rem; font-weight:750; }
.seo-tech-page-chips a:hover { text-decoration:none; border-color:#bfcdd9; background:#eef4f7; }
.seo-duplicate-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.seo-audit-note { margin:14px 0 0; line-height:1.5; }
.seo-tech-two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.seo-diagnostic-list { display:grid; gap:0; }
.seo-diagnostic-list > div { display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-top:1px solid var(--line); }
.seo-diagnostic-list > div:first-child { border-top:0; }
.seo-diagnostic-list span { color:var(--muted); font-size:.82rem; }
.seo-diagnostic-list strong { font-size:.86rem; }
.seo-robots-preview { display:grid; gap:7px; padding:14px; border:1px solid var(--line); border-radius:13px; background:#101923; }
.seo-robots-preview code { color:#d7e6f5; font-size:.78rem; overflow-wrap:anywhere; }
.seo-redirect-alert-panel { margin-bottom:18px; }
@media (max-width:1050px) {
    .seo-duplicate-grid, .seo-tech-two-column { grid-template-columns:1fr; }
}
@media (max-width:760px) {
    .seo-tech-issue { grid-template-columns:auto minmax(0,1fr); }
    .seo-tech-issue > b, .seo-tech-issue > a { grid-column:2; justify-self:start; }
    .seo-tech-cluster-head { flex-direction:column; }
    .seo-tech-cluster-head code { max-width:100%; text-align:left; }
}

/* CMS 1.0.16 · Medien, Formulare, Backups, Logs, Einstellungen */
.form-grid { display:grid; gap:14px; }
.form-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.form-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.form-grid label, .media-card label, .settings-page label, .form-builder label { display:grid; gap:7px; font-size:.84rem; font-weight:700; color:#364153; }
.row-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.button--small { min-height:34px; padding:0 11px; font-size:.8rem; }
.button--ghost { background:var(--surface); color:var(--text); border:1px solid var(--line); }
.button--danger-ghost { background:#fff4f5; color:var(--danger); border:1px solid #f4cbd1; }
.button:disabled, button:disabled { opacity:.48; cursor:not-allowed; transform:none !important; box-shadow:none !important; }
.status-pill { display:inline-flex; align-items:center; justify-content:center; min-height:28px; padding:0 9px; border-radius:999px; background:#eef2f6; color:var(--muted); font-size:.72rem; font-weight:850; white-space:nowrap; }
.status-pill--approved { background:#e8f7f1; color:var(--success); }
.empty-state { padding:32px 20px; text-align:center; display:grid; gap:5px; color:var(--muted); }
.empty-state strong { color:var(--text); }

.media-upload-panel { margin-bottom:18px; }
.media-upload-form { display:grid; gap:14px; }
.media-upload-form .update-dropzone { min-height:130px; }
.media-filter-row { align-items:center; }
.media-filter-row input { min-width:240px; flex:1 1 320px; }
.media-filter-row select { width:auto; min-width:160px; }
.media-library-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:14px; }
.media-card { overflow:hidden; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); display:grid; }
.media-preview { min-height:180px; background:#e9eef4; display:grid; place-items:center; color:var(--brand-deep); font-size:1.5rem; font-weight:900; }
.media-preview.is-image { background:#eef3f7; }
.media-preview img { width:100%; height:210px; object-fit:cover; display:block; }
.media-card-body { display:grid; gap:12px; padding:16px; }
.media-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.media-card-head > div { min-width:0; display:grid; gap:3px; }
.media-card-head strong, .media-card-head small { overflow-wrap:anywhere; }
.media-card-head small { color:var(--muted); font-size:.76rem; }
.media-url-row { display:flex; align-items:center; gap:8px; min-width:0; }
.media-url-row code { min-width:0; flex:1; padding:8px 9px; border-radius:9px; background:#eef2f6; color:#4c596a; font-size:.72rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.form-list-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:14px; }
.form-card { display:grid; grid-template-columns:auto minmax(0,1fr); gap:14px; padding:17px; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); }
.form-card-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:13px; background:#e5edf4; color:var(--brand-deep); font-size:1.25rem; font-weight:900; }
.form-card-body { display:grid; gap:13px; min-width:0; }
.form-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.form-card-head > div { display:grid; gap:4px; min-width:0; }
.form-card-head small { color:var(--muted); overflow-wrap:anywhere; }
.form-card-stats { display:flex; flex-wrap:wrap; gap:8px; }
.form-card-stats span { padding:7px 9px; border-radius:10px; background:#eef3f7; color:var(--muted); font-size:.75rem; }
.form-card-stats b { color:var(--text); }
.form-card code { display:block; padding:8px 10px; border-radius:10px; background:#111b29; color:#dce7f2; font-size:.75rem; overflow-wrap:anywhere; }
.form-builder { display:grid; gap:0; }
.form-field-builder-list { display:grid; gap:12px; }
.form-builder-field { display:grid; gap:13px; padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.form-builder-field-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:10px; border-bottom:1px solid var(--line); }
.form-builder-field-head > div { display:flex; gap:6px; }
.icon-button { min-height:32px; width:32px; padding:0; border-radius:9px; background:#edf2f6; color:var(--brand-deep); border:1px solid var(--line); }
.icon-button.danger { color:var(--danger); background:#fff4f5; }
.check-line { display:flex !important; align-items:center; gap:9px !important; }
.check-line input { width:17px; height:17px; }
.submission-list { display:grid; gap:12px; }
.submission-card { padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); display:grid; gap:14px; }
.submission-card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.submission-card-head > div { display:grid; gap:3px; }
.submission-card-head small { color:var(--muted); }
.submission-card dl { margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.submission-card dl > div { padding:11px; border-radius:11px; background:var(--surface); border:1px solid var(--line); }
.submission-card dt { color:var(--muted); font-size:.72rem; font-weight:800; margin-bottom:5px; }
.submission-card dd { margin:0; overflow-wrap:anywhere; line-height:1.5; }

.backup-info-panel { margin-bottom:18px; }
.backup-scope-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.backup-scope-grid article { padding:14px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); display:grid; gap:4px; }
.backup-scope-grid span, .backup-scope-grid small { color:var(--muted); font-size:.76rem; }
.backup-list { display:grid; gap:10px; }
.backup-card { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px 15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.backup-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; background:#e6eef4; color:var(--brand-deep); font-size:1.25rem; }
.backup-card > div:nth-child(2) { min-width:0; display:grid; gap:3px; }
.backup-card span, .backup-card small { color:var(--muted); overflow-wrap:anywhere; }
.backup-card span { font-size:.8rem; }
.backup-card small { font-size:.74rem; }

.log-filter-form { display:grid; grid-template-columns:minmax(240px,1fr) 160px 180px auto; gap:10px; align-items:center; }
.log-list { display:grid; gap:8px; }
.log-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:12px 13px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); }
.log-row > div { display:grid; gap:3px; min-width:0; }
.log-row strong, .log-row small { overflow-wrap:anywhere; }
.log-row small { color:var(--muted); }
.log-row time { color:var(--muted); font-size:.75rem; white-space:nowrap; }
.log-level { min-width:66px; text-align:center; padding:6px 8px; border-radius:999px; background:#eef2f6; color:var(--muted); font-size:.67rem; font-weight:900; letter-spacing:.04em; }
.log-level--success { background:#e8f7f1; color:var(--success); }
.log-level--warning { background:#fff5e8; color:var(--warning); }
.log-level--error { background:#fff0f2; color:var(--danger); }
.danger-zone { display:flex; align-items:center; justify-content:space-between; gap:20px; border-color:#f1cbd1; background:#fffafa; }
.danger-zone > div { display:grid; gap:3px; }
.danger-zone p { margin:0; }
.danger-zone form { display:flex; align-items:center; gap:8px; }
.danger-zone input { width:110px; }

.settings-page { display:grid; gap:0; }
.settings-toggle { display:flex !important; align-items:flex-start; gap:12px !important; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.settings-toggle input { width:19px; height:19px; margin-top:2px; }
.settings-toggle > span { display:grid; gap:4px; }
.settings-toggle small { color:var(--muted); font-weight:500; line-height:1.45; }

@media (max-width:1050px) {
    .form-grid.three, .backup-scope-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .log-filter-form { grid-template-columns:1fr 1fr; }
    .log-filter-form input { grid-column:1/-1; }
}
@media (max-width:720px) {
    .form-grid.two, .form-grid.three, .backup-scope-grid, .submission-card dl { grid-template-columns:1fr; }
    .media-library-grid, .form-list-grid { grid-template-columns:1fr; }
    .backup-card, .log-row { grid-template-columns:1fr; align-items:flex-start; }
    .backup-icon { display:none; }
    .log-row time { white-space:normal; }
    .log-filter-form { grid-template-columns:1fr; }
    .log-filter-form input { grid-column:auto; }
    .danger-zone { flex-direction:column; align-items:flex-start; }
    .danger-zone form { width:100%; flex-wrap:wrap; }
}
.editor-helper-row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 12px; border:1px solid var(--line); border-radius:12px; background:var(--surface-soft); }
.editor-helper-row > small { color:var(--muted); line-height:1.45; }
.editor-helper-row code { color:var(--brand-deep); font-weight:800; }
.editor-helper-row--compact { padding:8px 10px; }


/* CMS 1.0.17 · Admin UI Polish & stabile Navigation */
:root {
    --admin-gap-xs: 8px;
    --admin-gap-sm: 12px;
    --admin-gap-md: 16px;
    --admin-gap-lg: 24px;
    --admin-gap-xl: 32px;
    --admin-content-max: 1440px;
    --admin-topbar-height: 70px;
}

html,
body.admin-body {
    height: 100%;
    overflow: hidden;
}

.admin-shell {
    height: 100vh;
    min-height: 0;
    overflow: hidden;
    grid-template-columns: 248px minmax(0, 1fr);
}

.sidebar {
    position: relative;
    top: auto;
    height: 100vh;
    min-height: 0;
    padding: 18px 14px 14px;
    overflow: hidden;
}

.brand {
    flex: 0 0 auto;
    padding: 8px 8px 18px;
}

.brand img {
    width: 42px;
    height: 42px;
}

.admin-nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 4px 4px 14px 0;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.22) transparent;
}

.admin-nav::-webkit-scrollbar { width: 7px; }
.admin-nav::-webkit-scrollbar-track { background: transparent; }
.admin-nav::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,.18);
    border-radius: 999px;
}

.admin-nav .nav-link {
    flex: 0 0 auto;
    min-height: 42px;
    padding: 10px 11px;
    border-radius: 10px;
}

.admin-nav .nav-link.is-active {
    color: #fff;
    background: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
    box-shadow: inset 3px 0 0 #85b0c7;
}

.admin-nav .nav-link.is-active:hover {
    background: linear-gradient(135deg, rgba(255,255,255,.17), rgba(255,255,255,.10));
}

.sidebar-bottom {
    flex: 0 0 auto;
    margin-top: 0;
    gap: 9px;
    padding: 14px 8px 2px;
    background: linear-gradient(180deg, rgba(17,27,41,0), rgba(17,27,41,.98) 16%);
}

.admin-main {
    min-width: 0;
    min-height: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.topbar {
    flex: 0 0 var(--admin-topbar-height);
    height: var(--admin-topbar-height);
    position: relative;
    top: auto;
    z-index: 12;
    padding: 0 28px;
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(12px);
}

.content {
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 28px 30px 42px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.content-inner {
    width: min(100%, var(--admin-content-max));
    margin: 0 auto;
}

.admin-page-head,
.page-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    margin: 0 0 22px;
}

.admin-page-head > div,
.page-heading > div {
    min-width: 0;
}

.admin-page-head h1,
.page-heading h1 {
    margin: 5px 0 7px;
    font-size: clamp(1.75rem, 2.2vw, 2.35rem);
    line-height: 1.08;
    letter-spacing: -.04em;
}

.admin-page-head p,
.page-heading p {
    margin: 0;
    max-width: 850px;
    color: var(--muted);
    line-height: 1.55;
}

.admin-page-head > form,
.admin-page-head > a,
.page-heading > form,
.page-heading > a {
    flex: 0 0 auto;
}

.admin-stat-grid,
.stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 20px;
}

.admin-stat-grid .stat-card,
.stat-grid .stat-card {
    min-height: 132px;
    padding: 19px 20px;
    align-content: center;
}

.panel {
    padding: 22px;
}

.admin-section {
    margin-bottom: 18px;
}

.section-heading {
    margin-bottom: 16px;
}

.section-heading h2 {
    line-height: 1.2;
}

.empty-state {
    min-height: 170px;
    place-content: center;
    padding: 32px 22px;
}

.form-grid {
    gap: 12px 14px;
}

.form-grid + label,
.form-grid + .form-grid {
    margin-top: 14px;
}

.row-actions {
    gap: 8px;
}

/* Medien */
.media-upload-panel {
    margin-bottom: 18px;
}

.media-upload-form {
    gap: 12px;
}

.media-upload-form .update-dropzone {
    min-height: 112px;
}

.media-filter-row {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 180px auto;
    gap: 10px;
    align-items: center;
}

.media-filter-row input,
.media-filter-row select {
    width: 100%;
    min-width: 0;
}

.media-library-grid {
    margin-top: 16px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.media-card {
    background: #fff;
    box-shadow: 0 10px 28px rgba(26,43,63,.05);
}

.media-card-body {
    padding: 15px;
    gap: 11px;
}

.media-preview {
    min-height: 160px;
}

.media-preview img {
    height: 190px;
}

/* Formulare */
.form-list-grid {
    margin-top: 4px;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}

.form-card {
    padding: 16px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(26,43,63,.05);
}

.form-builder {
    gap: 0;
}

.form-builder .panel {
    padding: 20px;
}

.form-field-builder-list {
    gap: 10px;
}

.form-builder-field {
    gap: 11px;
    padding: 14px;
    background: #fbfcfe;
}

.form-builder-field-head {
    padding-bottom: 9px;
}

.form-builder > .sticky-actions,
.settings-page > .sticky-actions {
    position: static;
    margin: 0;
    justify-content: flex-end;
    padding: 14px 0 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
}

/* Backups */
.backup-info-panel {
    margin-bottom: 18px;
}

.backup-scope-grid {
    gap: 10px;
}

.backup-scope-grid article {
    min-height: 112px;
    padding: 15px;
    align-content: center;
    background: #fbfcfe;
}

.backup-card {
    background: #fff;
    box-shadow: 0 8px 24px rgba(26,43,63,.04);
}

/* Logs */
.log-filter-form {
    grid-template-columns: minmax(300px, 1fr) 170px 190px auto;
    gap: 10px;
}

.log-row {
    padding: 13px 14px;
    background: #fff;
}

.danger-zone {
    padding: 18px 20px;
}

/* Einstellungen */
.settings-page {
    gap: 0;
}

.settings-page .panel {
    display: grid;
    gap: 14px;
}

.settings-page .section-heading {
    margin-bottom: 2px;
}

.settings-page .panel > label:not(.settings-toggle) {
    display: grid;
    gap: 7px;
    font-size: .84rem;
    font-weight: 700;
    color: #364153;
}

.settings-toggle {
    margin-top: 2px;
}

/* Benutzer */
.user-create-panel {
    margin-bottom: 18px;
}

.user-create-panel .panel-head {
    margin-bottom: 2px;
}

.user-create-panel .two-col-form {
    gap: 14px;
}

.role-picker {
    margin: 0;
    padding: 14px 16px 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface-soft);
}

.role-picker legend {
    padding: 0 7px;
    font-weight: 750;
}

.user-table-card {
    box-shadow: 0 12px 34px rgba(26,43,63,.06);
}

.table-card {
    max-width: 100%;
    overflow-x: auto;
}

@media (max-width: 1180px) {
    .admin-stat-grid,
    .stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .backup-scope-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    html,
    body.admin-body {
        overflow: auto;
        height: auto;
        min-height: 100%;
    }

    .admin-shell {
        height: auto;
        min-height: 100vh;
        overflow: visible;
        grid-template-columns: 1fr;
    }

    .admin-main {
        height: auto;
        min-height: 100vh;
        overflow: visible;
    }

    .sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: min(286px, 88vw);
        height: 100dvh;
        transform: translateX(-103%);
        transition: transform .2s ease;
        box-shadow: 20px 0 60px rgba(0,0,0,.24);
    }

    .sidebar.open {
        transform: translateX(0);
    }

    .topbar {
        position: sticky;
        top: 0;
        height: 66px;
        flex-basis: 66px;
        padding: 0 18px;
    }

    .content {
        overflow: visible;
        padding: 22px 18px 34px;
    }

    .admin-page-head,
    .page-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
    }

    .media-filter-row {
        grid-template-columns: 1fr 170px auto;
    }
}

@media (max-width: 680px) {
    .admin-stat-grid,
    .stat-grid,
    .backup-scope-grid {
        grid-template-columns: 1fr;
    }

    .admin-stat-grid .stat-card,
    .stat-grid .stat-card {
        min-height: 108px;
    }

    .media-filter-row,
    .log-filter-form {
        grid-template-columns: 1fr;
    }

    .media-filter-row select,
    .media-filter-row button,
    .log-filter-form button {
        width: 100%;
    }

    .panel {
        padding: 18px;
    }

    .form-card {
        grid-template-columns: 1fr;
    }

    .form-card-icon {
        display: none;
    }

    .backup-card .row-actions,
    .media-card .row-actions {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sidebar,
    button,
    .button,
    .primary-button,
    .ghost-button {
        transition: none !important;
    }
}

/* fiebigerCMS 1.0.18 · Redaktion & Workflow */
.topbar-search {
    margin-left: auto;
    margin-right: 14px;
    width: min(420px, 34vw);
    display: flex;
    align-items: center;
    gap: 9px;
    border: 1px solid var(--border, #dbe3ee);
    background: #f8fbff;
    border-radius: 13px;
    padding: 7px 10px 7px 12px;
}
.topbar-search input {
    min-width: 0;
    flex: 1;
    border: 0;
    background: transparent;
    padding: 0;
    box-shadow: none;
}
.topbar-search input:focus { outline: 0; }
.topbar-search kbd {
    border: 1px solid #dbe3ee;
    background: #fff;
    border-radius: 7px;
    padding: 2px 6px;
    color: #728096;
    font: inherit;
    font-size: 11px;
}
.topbar-title { min-width: 150px; }

.editor-meta-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: -4px 0 18px;
    padding: 11px 14px;
    border: 1px solid #dce5ef;
    border-radius: 12px;
    background: #f7faff;
    color: #66758b;
    font-size: 13px;
}
.autosave-recovery {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
}
.autosave-recovery div { display: grid; gap: 3px; }
.page-content-panel textarea[name="content"] { min-height: 520px; resize: vertical; }
.publish-panel .editor-secondary-actions { margin-top: 6px; }
[data-schedule-field].field-hidden { display: none; }
.field-action-row { display: flex; gap: 8px; align-items: center; }
.field-action-row input { flex: 1; }

.status-draft { background: #eef2f7; color: #566477; }
.status-published { background: #e5f7ee; color: #08754e; }
.status-scheduled { background: #fff2dd; color: #9a5d00; }
.status-trashed { background: #fdebed; color: #a52b3b; }

.page-workflow-stats .stat-card { text-decoration: none; color: inherit; }
.page-workflow-stats .stat-card.is-selected,
.page-workflow-stats .stat-card:hover { border-color: #7f9fc2; box-shadow: 0 12px 32px rgba(20,46,78,.08); }
.page-table-card td strong + small,
.page-table-card td span + small { display: block; margin-top: 4px; }
.danger-link { color: #b4233f !important; }

.admin-dialog {
    width: min(920px, calc(100vw - 40px));
    max-height: min(760px, calc(100vh - 60px));
    border: 0;
    border-radius: 20px;
    padding: 0;
    box-shadow: 0 28px 90px rgba(15,31,51,.24);
    overflow: hidden;
}
.admin-dialog::backdrop { background: rgba(15,29,47,.48); backdrop-filter: blur(2px); }
.dialog-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 22px;
    border-bottom: 1px solid #e4eaf1;
    background: #fff;
}
.dialog-head h2 { margin: 3px 0 0; }
.media-picker-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding: 20px;
    overflow: auto;
    max-height: 600px;
}
.media-picker-item {
    border: 1px solid #dce5ef;
    border-radius: 14px;
    background: #fff;
    padding: 8px;
    display: grid;
    gap: 8px;
    text-align: left;
    cursor: pointer;
}
.media-picker-item:hover { border-color: #7f9fc2; transform: translateY(-1px); }
.media-picker-item img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 9px; background: #eef3f8; }
.media-picker-item span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 700; }
.picker-list { display: grid; gap: 8px; padding: 20px; max-height: 560px; overflow: auto; }
.picker-list button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 16px;
    border: 1px solid #dce5ef;
    border-radius: 12px;
    background: #fff;
    color: inherit;
    text-align: left;
}
.picker-list button span { display: grid; gap: 3px; }
.picker-list button small { color: #738198; }

.version-list { display: grid; gap: 12px; }
.version-card {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
    padding: 16px;
    border: 1px solid #e0e7ef;
    border-radius: 14px;
    background: #fbfdff;
}
.version-card-main { display: grid; gap: 6px; }
.version-card-main > div { display: flex; align-items: center; gap: 10px; }
.version-card-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: #68778d; font-size: 12px; }
.version-card-meta span { display: grid; gap: 2px; }

.workflow-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0;
}
.workflow-summary-card {
    min-height: 112px;
    border: 1px solid #dfe7f0;
    border-radius: 18px;
    background: linear-gradient(145deg,#fff,#f8fbff);
    padding: 18px 20px;
    text-decoration: none;
    color: inherit;
    display: grid;
    align-content: center;
    gap: 3px;
}
.workflow-summary-card strong { font-size: 30px; line-height: 1; }
.dashboard-editorial-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-bottom: 18px; }
.dashboard-editorial-panel { min-width: 0; }
.editorial-list { display: grid; gap: 7px; }
.editorial-list > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 12px;
    border: 1px solid #e5eaf0;
    border-radius: 11px;
    color: inherit;
    text-decoration: none;
    background: #fbfdff;
}
.editorial-list > a span:first-child { display: grid; gap: 2px; min-width: 0; }
.editorial-list small { color: #758399; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.editorial-list time { font-weight: 800; color: #385775; white-space: nowrap; }

.search-result-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.global-search-page { display: flex; gap: 10px; }
.global-search-page input { flex: 1; }
.search-result-list { display: grid; gap: 7px; }
.search-result-list a { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 13px; border:1px solid #e3e9f0; border-radius:11px; color:inherit; text-decoration:none; }
.search-result-list a span { display:grid; gap:2px; min-width:0; }
.search-result-list small { color:#738198; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.form-notification-box {
    margin-top: 18px;
    display: grid;
    gap: 18px;
    padding: 19px 20px;
    border: 1px solid #dfe7f0;
    background: linear-gradient(145deg,#fbfdff 0%,#f5f9fd 100%);
    border-radius: 16px;
}
.form-notification-head { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-bottom:16px; border-bottom:1px solid #e2eaf2; }
.form-notification-copy { min-width:0; }
.form-notification-box h3 { margin: 3px 0 5px; }
.form-notification-box p { margin: 0; color: #728096; line-height:1.5; }
.form-notification-toggle { display:flex !important; align-items:center; gap:11px !important; min-width:280px; padding:11px 13px; border:1px solid #d6e1eb; border-radius:13px; background:#fff; cursor:pointer; }
.form-notification-toggle:hover { border-color:#b9ccda; box-shadow:0 5px 16px rgba(30,56,76,.05); }
.form-notification-toggle input { width:18px !important; height:18px; flex:0 0 18px; margin:0; accent-color:var(--brand-deep); }
.form-notification-toggle > span { display:grid; gap:2px; min-width:0; }
.form-notification-toggle strong { color:var(--text); font-size:.86rem; }
.form-notification-toggle small { color:var(--muted); font-weight:500; line-height:1.35; }
.form-notification-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; align-items:start; }
.form-notification-fields label { display:grid; gap:7px; min-width:0; font-size:.84rem; font-weight:700; color:#364153; }
.form-notification-fields input,
.form-notification-fields select { min-height:44px; height:44px; }
.form-notification-fields small { color:var(--muted); font-weight:500; line-height:1.4; }

.preview-banner {
    max-width: 980px;
    margin: 18px auto 24px;
    padding: 12px 16px;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    border: 1px solid #d6a44f;
    border-radius: 12px;
    background: #fff7e7;
    color: #79530d;
}

@media (max-width: 1180px) {
    .topbar-search { width: min(320px, 28vw); }
    .media-picker-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .version-card { grid-template-columns: 1fr; }
    .form-notification-head { align-items:flex-start; }
    .form-notification-toggle { min-width:250px; }
}
@media (max-width: 900px) {
    .topbar-search { display: none; }
    .dashboard-editorial-grid,
    .search-result-grid { grid-template-columns: 1fr; }
    .workflow-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .page-editor-head .row-actions { width: 100%; flex-wrap: wrap; }
    .media-picker-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
    .workflow-summary-grid { grid-template-columns: 1fr; }
    .editor-meta-strip,
    .autosave-recovery,
    .field-action-row,
    .global-search-page { align-items: stretch; flex-direction: column; }
    .form-notification-head { flex-direction:column; align-items:stretch; }
    .form-notification-toggle { min-width:0; width:100%; }
    .form-notification-fields { grid-template-columns:1fr; }
    .media-picker-grid { grid-template-columns: 1fr 1fr; padding: 12px; }
    .preview-banner { margin-inline: 12px; flex-direction: column; }
}

/* CMS 1.0.19 · Sicherheit & Kontoschutz */
.nav-security-dot { width: 8px; height: 8px; border-radius: 50%; background: #f2b84b; margin-left: auto; box-shadow: 0 0 0 4px rgba(242,184,75,.12); }
.security-score-badge { display:inline-flex; align-items:center; min-height:36px; padding:0 13px; border-radius:999px; font-size:.82rem; font-weight:800; border:1px solid var(--line); background:#fff; }
.security-score-badge.is-good { color:var(--success); background:#edf9f4; border-color:#ccecdf; }
.security-score-badge.is-warn { color:var(--warning); background:#fff8ed; border-color:#f2dcc0; }
.security-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.security-date-value { font-size:1.35rem !important; }
.security-inline-form { display:grid; grid-template-columns:minmax(240px,1fr) auto; gap:12px; align-items:end; max-width:720px; margin-top:16px; }
.security-inline-form label, .security-form-grid label { display:grid; gap:7px; font-size:.86rem; font-weight:700; color:#364153; }
.security-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:end; margin-top:15px; }
.security-form-grid button { justify-self:start; }
.security-setup-box { display:grid; gap:16px; padding:18px; border-radius:16px; border:1px solid #dbe5ef; background:linear-gradient(145deg,#fbfdff,#f5f9fd); }
.security-setup-box h3 { margin:3px 0 6px; }
.security-setup-box p { margin:0; }
.security-secret { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.security-secret code { font-size:1rem; letter-spacing:.08em; padding:10px 12px; overflow-wrap:anywhere; }
.security-uri { display:block; margin-top:10px; padding:10px; overflow-wrap:anywhere; }
.danger-details { margin-top:14px; border:1px solid #f0d5da; background:#fffafb; border-radius:12px; padding:12px 14px; }
.danger-details summary, details summary { cursor:pointer; font-weight:750; }
.recovery-highlight { border-color:#d8c67b; background:linear-gradient(145deg,#fffef8,#fffaf0); }
.recovery-code-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:16px 0; }
.recovery-code-grid code { text-align:center; padding:12px 8px; font-weight:800; letter-spacing:.06em; border:1px solid #e8dcae; background:#fff; }
.security-session-list { display:grid; gap:10px; }
.security-session-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 15px; border:1px solid #e0e7ef; border-radius:13px; background:#fbfdff; }
.security-session-card.is-current { border-color:#bddfce; background:#f3fbf7; }
.security-session-card > div:first-child { min-width:0; display:grid; gap:4px; }
.security-session-card span, .security-session-card small { color:#6e7d92; overflow:hidden; text-overflow:ellipsis; }
.security-table table { min-width:720px; }
.security-mini-grid, .security-dashboard-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.security-mini-grid > div, .security-dashboard-grid > div { padding:14px; border:1px solid #e2e8ef; border-radius:13px; background:#f9fbfd; display:grid; gap:4px; }
.security-mini-grid span, .security-dashboard-grid span { color:var(--muted); font-size:.78rem; font-weight:700; }
.security-mini-grid strong, .security-dashboard-grid strong { font-size:1.55rem; }
.security-mini-grid .is-attention, .security-dashboard-grid .is-warning { background:#fff7ea; border-color:#efd5ae; color:#9b5a0f; }
.security-warning-list { margin-top:16px; padding:14px; border:1px solid #efd5ae; background:#fff9ef; border-radius:13px; display:grid; gap:7px; }
.security-warning-list > strong { margin-bottom:3px; }
.security-warning-list a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:8px 0; border-top:1px solid rgba(181,106,22,.12); }
.security-warning-list small { color:var(--muted); }
.security-attempt-list { display:grid; gap:7px; }
.security-attempt-list > div { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 12px; border:1px solid #e5eaf0; border-radius:11px; }
.security-attempt-list span:first-child { display:grid; gap:2px; }
.security-attempt-list small { color:var(--muted); }
.dashboard-security-panel { margin-bottom:18px; }
.dashboard-security-panel.has-attention { border-color:#efd5ae; }
.dashboard-security-panel p { margin-bottom:0; }
.settings-toggle-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.settings-toggle-grid .settings-toggle { margin:0; }
.settings-toggle-grid .security-important-toggle { grid-column:1/-1; border-color:#d8c67b; background:#fffaf0; }
.security-force-password { padding:13px 14px; border:1px solid #e0e7ef; border-radius:12px; background:#f9fbfd; }
.security-force-password span { display:grid; gap:3px; }
.user-security-card { margin-top:18px; padding:22px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:var(--shadow); display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px 24px; align-items:start; }
.user-security-card h2 { margin:4px 0 6px; }
.user-security-card p { margin:0; color:var(--muted); }
.user-security-card .button-row { grid-column:1/-1; }
.user-security-status { display:grid; justify-items:end; gap:7px; }
.user-security-status small { color:var(--muted); }
.auth-security-form { margin-top:20px; }

@media (max-width: 1000px) {
    .security-stat-grid, .security-mini-grid, .security-dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .recovery-code-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
    .security-stat-grid, .security-mini-grid, .security-dashboard-grid, .settings-toggle-grid, .security-form-grid { grid-template-columns:1fr; }
    .security-inline-form { grid-template-columns:1fr; }
    .security-session-card, .user-security-card { grid-template-columns:1fr; align-items:stretch; }
    .user-security-status { justify-items:start; }
    .recovery-code-grid { grid-template-columns:1fr; }
}


/* 1.0.20 · Passkeys / WebAuthn */
.auth-passkey-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:.78rem}.auth-passkey-divider:before,.auth-passkey-divider:after{content:"";height:1px;background:var(--line);flex:1}.auth-passkey-button{width:100%;background:#0f2940;color:#fff}.auth-passkey-box{display:grid;gap:8px}.auth-passkey-message,.passkey-message{min-height:20px;color:var(--muted);font-size:.84rem}.passkey-create-card{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto;gap:12px;align-items:end;padding:16px;border:1px solid #dce6ef;border-radius:14px;background:#f8fbfd;margin:16px 0 18px}.passkey-create-card label{display:grid;gap:7px}.passkey-list{display:grid;gap:10px}.passkey-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 15px;border:1px solid #dfe7ee;border-radius:14px;background:#fff}.passkey-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#edf5fa;color:#25465f;font-size:1.3rem}.passkey-card-main{display:grid;gap:3px;min-width:0}.passkey-card-main span,.passkey-card-main small{color:var(--muted);font-size:.82rem;overflow:hidden;text-overflow:ellipsis}.passkey-actions{min-width:120px}.passkey-actions[open]{padding:10px;border:1px solid var(--line);border-radius:12px;background:#fbfdff}.passkey-actions form{display:grid;gap:8px;margin-top:10px}.passkey-actions label{display:grid;gap:5px}.security-mini-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.security-stat-grid .stat-card strong{overflow-wrap:anywhere}@media(max-width:900px){.passkey-create-card{grid-template-columns:1fr}.passkey-card{grid-template-columns:42px minmax(0,1fr)}.passkey-actions{grid-column:1/-1}}

/* Performance & Cache */
.performance-check-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.performance-check-grid .mini-card {
    min-height: 120px;
}
.performance-check-grid .mini-card > span,
.performance-check-grid .mini-card > small {
    display: block;
}
.performance-check-grid .mini-card > strong {
    display: block;
    margin: 8px 0 6px;
    font-size: 1.1rem;
}
.danger-zone-soft {
    border-color: rgba(185, 72, 72, .18);
}
@media (max-width: 1100px) {
    .performance-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
    .performance-check-grid { grid-template-columns: 1fr; }
}

/* 1.0.22 · System & Wartung */
.system-health-badge{display:inline-flex;align-items:center;padding:9px 13px;border-radius:999px;font-weight:800;font-size:.85rem;background:#edf5f1;color:#177654}.system-health-badge.is-warning{background:#fff2df;color:#a45b00}.system-health-badge.is-error{background:#ffebee;color:#9c2333}.system-diagnostic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.system-extension-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.system-extension{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border,#dbe4ef);border-radius:14px;background:#f8fafc}.system-extension.is-ok strong{color:#16815f}.system-extension.is-missing{background:#fff4f4;border-color:#ffd4da}.system-extension.is-missing strong{color:#a72d3e}.system-path-list,.system-table-checks{margin-top:18px;border:1px solid var(--border,#dbe4ef);border-radius:14px;overflow:hidden}.system-path-list>div,.system-table-checks>div{display:flex;justify-content:space-between;gap:20px;padding:12px 15px;border-bottom:1px solid var(--border,#dbe4ef)}.system-path-list>div:last-child,.system-table-checks>div:last-child{border-bottom:0}.system-issue-list{display:grid;gap:10px}.system-issue{display:grid;grid-template-columns:90px 1fr;gap:16px;padding:13px 16px;border-radius:12px}.system-issue.is-critical{background:#fff0f2;color:#912638}.system-issue.is-warning{background:#fff7e9;color:#8d5a06}.compact-grid{margin-top:0}.system-cron-url{display:grid;gap:7px}.system-cron-url input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.system-task-list{display:grid;gap:12px;margin-top:20px}.system-task-card{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:18px;border:1px solid var(--border,#dbe4ef);border-radius:16px;background:#f9fbfd}.system-task-copy{min-width:0}.system-task-copy>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.system-task-copy p{margin:6px 0;color:#65748a}.system-task-copy small{display:block;color:#7b8797;margin-top:3px}.system-task-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.text-danger{color:#a72d3e}@media(max-width:980px){.system-diagnostic-grid,.system-extension-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-task-card{align-items:flex-start;flex-direction:column}.system-task-actions{justify-content:flex-start}}@media(max-width:640px){.system-diagnostic-grid,.system-extension-grid{grid-template-columns:1fr}.system-path-list>div,.system-table-checks>div{flex-direction:column;gap:5px}.system-issue{grid-template-columns:1fr;gap:4px}}


/* 1.0.22.1 · Wartungsstatus & System-UI Repair */
.admin-nav { gap: 2px; padding-bottom: 8px; }
.admin-nav .nav-link { min-height: 36px; padding: 7px 10px; font-size: .9rem; }
.brand { padding-bottom: 12px; }
.sidebar-bottom { gap: 7px; padding-top: 10px; }
.nav-maintenance-badge {
    margin-left: auto;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    background: #f4b04c;
    color: #3f2600;
    font-size: .72rem;
    font-weight: 900;
    box-shadow: 0 0 0 3px rgba(244,176,76,.14);
}
.topbar-maintenance-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff3dd;
    border: 1px solid #f1d2a0;
    color: #87520a;
    font-size: .78rem;
    font-weight: 800;
    white-space: nowrap;
}
.topbar-maintenance-chip:hover { text-decoration: none; background: #ffecc9; }
.topbar-maintenance-chip > span { width: 8px; height: 8px; border-radius: 50%; background: #e28b1a; box-shadow: 0 0 0 4px rgba(226,139,26,.13); }
.maintenance-admin-banner {
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    margin: 0 0 22px;
    padding: 15px 17px;
    border: 1px solid #efc37e;
    border-left: 4px solid #de8617;
    border-radius: 15px;
    background: linear-gradient(135deg,#fff8eb,#fffdf8);
    box-shadow: 0 12px 30px rgba(154,91,14,.08);
}
.maintenance-admin-banner-icon,
.dashboard-maintenance-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: #e99522;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 900;
}
.maintenance-admin-banner > div:nth-child(2) { min-width: 0; display: grid; gap: 3px; }
.maintenance-admin-banner strong { color: #72440b; }
.maintenance-admin-banner span { color: #89652e; font-size: .86rem; line-height: 1.5; }
.maintenance-admin-banner-action { color: #78480b; font-weight: 800; font-size: .84rem; white-space: nowrap; }
.dashboard-maintenance-card {
    display: grid;
    grid-template-columns: 48px minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    margin: 0 0 22px;
    padding: 20px 22px;
    border: 1px solid #efbd71;
    border-radius: 18px;
    background: linear-gradient(135deg,#fff8e9 0%,#fffdf7 70%);
    box-shadow: 0 14px 34px rgba(161,94,10,.09);
}
.dashboard-maintenance-icon { width: 48px; height: 48px; border-radius: 14px; }
.dashboard-maintenance-copy { display: grid; gap: 4px; }
.dashboard-maintenance-copy h2 { margin: 0; color: #75450b; }
.dashboard-maintenance-copy p { margin: 0; color: #866330; line-height: 1.55; }
.dashboard-maintenance-copy small { color: #956917; margin-top: 3px; }
.dashboard-maintenance-action { font-weight: 800; white-space: nowrap; color: #75450b; }
.system-page { display: grid; gap: 0; }
.system-page > .admin-page-head { margin-bottom: 24px; }
.system-page > .admin-stat-grid { margin-bottom: 26px; }
.system-page > .admin-section { margin-bottom: 24px; }
.system-section-card { padding: 24px 26px; }
.system-section-card .section-heading { margin-bottom: 22px; padding-bottom: 17px; border-bottom: 1px solid #e7edf3; }
.system-section-card .section-heading p { margin: 7px 0 0; max-width: 820px; line-height: 1.55; }
.system-section-card .form-stack { gap: 18px; }
.system-section-card .row-actions { margin-top: 18px; }
.system-diagnostic-grid { gap: 14px; margin: 2px 0 20px; }
.system-diagnostic-grid .mini-card { min-height: 126px; padding: 18px; align-content: start; }
.system-diagnostic-grid .mini-card > strong { margin-top: 8px; font-size: 1.02rem; line-height: 1.35; overflow-wrap: anywhere; }
.system-diagnostic-grid .mini-card > small { margin-top: 7px; line-height: 1.45; }
.system-extension-grid { grid-template-columns: repeat(3,minmax(180px,1fr)); gap: 14px; margin-top: 0; }
.system-extension { min-height: 58px; align-items: center; padding: 15px 17px; }
.system-extension-state { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; background: #e9f6f0; font-size: .76rem; }
.system-extension.is-missing .system-extension-state { background: #ffe7ea; }
.system-path-list { margin-top: 20px; }
.system-path-list > div { align-items: center; min-height: 48px; padding: 12px 16px; }
.system-path-state { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; font-size: .76rem; font-weight: 800; }
.system-path-state.is-ok { color: #137654; background: #e9f7f1; }
.system-path-state.is-warning { color: #9a5310; background: #fff1df; }
.system-page .compact-grid { margin-bottom: 0; }
.system-cron-url { margin-top: 2px; }
.system-cron-url input { margin-top: 2px; }
.system-cron-url small { line-height: 1.5; margin-top: 2px; }
.system-task-list { gap: 16px; margin-top: 24px; }
.system-task-card { align-items: stretch; padding: 20px; gap: 24px; background: #fbfdff; }
.system-task-copy { display: grid; gap: 11px; }
.system-task-title-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.system-task-title-row > strong { font-size: 1rem; }
.system-task-copy p { margin: 0; line-height: 1.55; }
.system-task-meta { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.system-task-meta > div { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid #e3eaf1; border-radius: 11px; background: #fff; }
.system-task-meta span { color: var(--muted); font-size: .72rem; font-weight: 750; text-transform: uppercase; letter-spacing: .04em; }
.system-task-meta strong { font-size: .84rem; line-height: 1.4; }
.system-task-message { padding: 10px 12px; border-radius: 10px; background: #f1f5f8; color: #5f6f83; font-size: .82rem; line-height: 1.45; }
.system-task-actions { align-content: center; align-items: center; min-width: 196px; }
@media (max-height: 860px) and (min-width: 901px) {
    .brand img { width: 38px; height: 38px; }
    .brand span { font-size: 1.02rem; }
    .admin-nav .nav-link { min-height: 33px; padding-block: 6px; font-size: .86rem; }
    .sidebar-bottom { font-size: .9rem; }
}
@media (max-width: 1100px) {
    .topbar-maintenance-chip { display: none; }
    .system-extension-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .system-task-meta { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
    .maintenance-admin-banner,
    .dashboard-maintenance-card { grid-template-columns: 42px minmax(0,1fr); align-items: start; }
    .maintenance-admin-banner-action,
    .dashboard-maintenance-action { grid-column: 1 / -1; padding-left: 56px; white-space: normal; }
    .system-section-card { padding: 19px; }
    .system-task-meta { grid-template-columns: 1fr; }
    .system-task-actions { min-width: 0; }
}
@media (max-width: 560px) {
    .system-extension-grid { grid-template-columns: 1fr; }
    .maintenance-admin-banner,
    .dashboard-maintenance-card { grid-template-columns: 1fr; }
    .maintenance-admin-banner-action,
    .dashboard-maintenance-action { grid-column: auto; padding-left: 0; }
}

/* fiebigerCMS 1.0.22.2 · Wartungsmodus Besucheransicht */
.maintenance-admin-banner-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}
.maintenance-admin-banner-actions .maintenance-admin-banner-action {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid rgba(120, 72, 11, .2);
    border-radius: 10px;
    background: rgba(255, 255, 255, .55);
    text-decoration: none;
}
.maintenance-admin-banner-actions .maintenance-admin-banner-action:hover {
    background: #fff;
    text-decoration: none;
}
@media (max-width: 900px) {
    .maintenance-admin-banner-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
        padding-left: 56px;
    }
}
@media (max-width: 620px) {
    .maintenance-admin-banner-actions {
        padding-left: 0;
        align-items: stretch;
    }
    .maintenance-admin-banner-actions .maintenance-admin-banner-action {
        width: 100%;
        justify-content: center;
    }
}

/* Benachrichtigungscenter 1.0.23 */
.notification-bell { position:relative; margin-left:auto; }
.notification-bell > summary { list-style:none; position:relative; width:44px; height:44px; border:1px solid var(--line); border-radius:14px; display:grid; place-items:center; background:var(--surface); cursor:pointer; color:var(--text); }
.notification-bell > summary::-webkit-details-marker { display:none; }
.notification-bell > summary:hover { background:var(--surface-soft); }
.notification-bell-icon { font-size:1.25rem; transform:rotate(45deg); display:block; }
.notification-bell-count { position:absolute; top:-7px; right:-7px; min-width:21px; height:21px; padding:0 5px; border-radius:999px; background:#c52f42; color:#fff; border:2px solid #fff; display:grid; place-items:center; font-size:.68rem; line-height:1; font-weight:900; }
.notification-popover { position:absolute; z-index:80; top:52px; right:0; width:min(390px,calc(100vw - 28px)); border:1px solid var(--line); border-radius:18px; background:var(--surface); box-shadow:0 24px 60px rgba(19,35,53,.18); overflow:hidden; }
.notification-popover-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid var(--line); }
.notification-popover-head a { font-size:.82rem; }
.notification-popover-list { display:grid; max-height:420px; overflow:auto; }
.notification-popover-item { display:grid; grid-template-columns:10px 1fr; gap:11px; padding:14px 18px; color:var(--text); text-decoration:none; border-bottom:1px solid var(--line); }
.notification-popover-item:last-child { border-bottom:0; }
.notification-popover-item:hover { background:var(--surface-soft); }
.notification-popover-item.is-unread { background:#f3f8fb; }
.notification-popover-item span:last-child { min-width:0; display:grid; gap:3px; }
.notification-popover-item strong { font-size:.86rem; }
.notification-popover-item small { color:var(--muted); font-size:.76rem; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.notification-popover-dot { width:9px; height:9px; margin-top:5px; border-radius:50%; background:#8192a4; }
.notification-popover-dot.level-success { background:#1c9a69; }.notification-popover-dot.level-warning { background:#d88a16; }.notification-popover-dot.level-error { background:#c52f42; }.notification-popover-dot.level-info { background:#447ea0; }
.notification-popover-empty { padding:24px 18px; color:var(--muted); text-align:center; }
.notification-page-heading { align-items:center; }
.notification-filter-tabs { display:flex; gap:8px; margin:-4px 0 18px; }
.notification-filter-tabs a { display:inline-flex; align-items:center; gap:7px; padding:9px 13px; border:1px solid var(--line); border-radius:12px; text-decoration:none; color:var(--muted); background:var(--surface); font-weight:750; font-size:.84rem; }
.notification-filter-tabs a.is-active { color:var(--text); background:#eaf1f6; border-color:#cbd9e4; }
.notification-filter-tabs span { min-width:20px; height:20px; padding:0 5px; border-radius:999px; display:grid; place-items:center; background:#c52f42; color:#fff; font-size:.67rem; }
.notification-center-panel { padding:0; overflow:hidden; }
.notification-list { display:grid; }
.notification-item { display:grid; grid-template-columns:46px minmax(0,1fr) auto; gap:14px; align-items:center; padding:18px 20px; border-bottom:1px solid var(--line); }
.notification-item:last-child { border-bottom:0; }
.notification-item.is-unread { background:#f5f9fc; box-shadow:inset 3px 0 0 #447ea0; }
.notification-icon { width:42px; height:42px; border-radius:13px; display:grid; place-items:center; background:#edf2f6; color:var(--brand-deep); font-weight:900; font-size:1.05rem; }
.notification-item.level-warning .notification-icon { background:#fff4df; color:#9a6410; }.notification-item.level-error .notification-icon { background:#fff0f2; color:#a82939; }.notification-item.level-success .notification-icon { background:#e9f8f1; color:#14784f; }
.notification-copy { min-width:0; display:grid; gap:4px; }
.notification-title-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.notification-copy p { margin:0; color:var(--muted); line-height:1.5; }
.notification-copy small { color:var(--muted); font-size:.75rem; }
.notification-new { display:inline-flex; align-items:center; min-height:20px; padding:0 7px; border-radius:999px; background:#dfeef7; color:#285f7c; font-size:.66rem; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.notification-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px 12px; }
.notification-actions form { margin:0; }.notification-actions .link-button { font-size:.78rem; }.notification-actions .link-button.muted { color:var(--muted); }
@media(max-width:900px){.topbar-search{display:none}.notification-bell{margin-left:auto}.notification-item{grid-template-columns:42px 1fr}.notification-actions{grid-column:2;justify-content:flex-start}.notification-popover{position:fixed;top:72px;right:14px}}
@media(max-width:600px){.notification-item{padding:16px 14px}.notification-icon{width:38px;height:38px}.notification-page-heading{align-items:flex-start}.notification-page-heading form{width:100%}}

/* CMS 1.0.24 · Persönliches Dashboard */
.dashboard-customizer {
    margin: 0 0 22px;
    padding: 22px;
    border: 1px solid #cfdce7;
    border-radius: 20px;
    background: linear-gradient(180deg,#fbfdff 0%,#f6f9fc 100%);
    box-shadow: 0 18px 42px rgba(25,45,65,.07);
}
.dashboard-customizer[hidden] { display:none !important; }
.dashboard-customizer-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:18px; }
.dashboard-customizer-head h2 { margin:4px 0 5px; }
.dashboard-customizer-head p { margin:0; color:var(--muted); }
.dashboard-customizer-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.dashboard-customizer-row { display:grid; grid-template-columns:minmax(0,1fr) 140px; gap:14px; align-items:center; padding:13px 14px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.dashboard-widget-toggle { display:flex !important; align-items:center; gap:11px; margin:0 !important; }
.dashboard-widget-toggle > span { display:grid; gap:2px; }
.dashboard-widget-toggle strong { font-size:.87rem; }
.dashboard-widget-toggle small { color:var(--muted); font-size:.75rem; line-height:1.35; }
.dashboard-customizer-row > label:last-child { display:grid; gap:5px; margin:0; }
.dashboard-customizer-row > label:last-child > span { color:var(--muted); font-size:.72rem; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
.dashboard-customizer-row select { min-height:38px; padding:7px 34px 7px 10px; }
.dashboard-customizer-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
.dashboard-customizer-actions > div { display:flex; align-items:center; gap:12px; }
.dashboard-save-state { color:var(--muted); font-size:.78rem; font-weight:650; }
.dashboard-widget-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:18px; align-items:start; }
.dashboard-widget { position:relative; min-width:0; margin:0; transition:box-shadow .16s ease, transform .16s ease, opacity .16s ease; }
.dashboard-widget[hidden] { display:none !important; }
.dashboard-widget.widget-size-small { grid-column:span 4; }
.dashboard-widget.widget-size-medium { grid-column:span 6; }
.dashboard-widget.widget-size-large { grid-column:span 12; }
.dashboard-widget.is-dragging { opacity:.48; transform:scale(.985); box-shadow:0 24px 60px rgba(19,39,59,.18); }
.dashboard-widget-toolbar { display:flex; align-items:center; gap:8px; min-height:26px; margin:-6px 0 10px; color:#8391a0; font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.dashboard-drag-handle { width:30px; height:28px; display:grid; place-items:center; border:0; border-radius:9px; background:#eef3f7; color:#6e7f90; cursor:grab; font-size:1rem; line-height:1; padding:0; }
.dashboard-drag-handle:active { cursor:grabbing; }
.dashboard-kpi-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.dashboard-kpi-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.dashboard-kpi-grid > div { padding:13px 14px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); display:grid; gap:3px; }
.dashboard-kpi-grid span { color:var(--muted); font-size:.74rem; font-weight:700; }
.dashboard-kpi-grid strong { font-size:1.42rem; }
.dashboard-kpi-grid .is-warning { background:#fff7ea; border-color:#efd5ae; color:#9b5a0f; }
.dashboard-big-number { display:grid; gap:3px; padding:14px 0 10px; }
.dashboard-big-number strong { font-size:2.45rem; line-height:1; letter-spacing:-.05em; }
.dashboard-big-number span { color:var(--muted); font-size:.8rem; font-weight:700; }
.dashboard-mini-metrics { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.dashboard-mini-metrics span { padding:8px 10px; border-radius:10px; background:var(--surface-soft); color:var(--muted); font-size:.75rem; }
.dashboard-mini-metrics b { color:var(--text); }
.dashboard-widget-note { margin:13px 0 0; color:var(--muted); font-size:.84rem; line-height:1.55; }
.dashboard-notification-list { display:grid; gap:8px; }
.dashboard-notification-list a { display:grid; grid-template-columns:8px minmax(0,1fr); gap:10px; align-items:start; padding:10px 11px; border:1px solid var(--line); border-radius:12px; background:var(--surface-soft); color:var(--text); }
.dashboard-notification-list a:hover { text-decoration:none; background:#fff; }
.dashboard-notification-list i { width:8px; height:8px; margin-top:6px; border-radius:50%; background:#7690a6; }
.dashboard-notification-list i.level-warning { background:#d58c24; }
.dashboard-notification-list i.level-error { background:#c94c58; }
.dashboard-notification-list i.level-success { background:#26966f; }
.dashboard-notification-list span { display:grid; gap:2px; min-width:0; }
.dashboard-notification-list strong { font-size:.82rem; }
.dashboard-notification-list small { color:var(--muted); font-size:.73rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-drop-hint { position:fixed; left:50%; bottom:22px; transform:translateX(-50%); z-index:40; padding:10px 14px; border-radius:12px; background:#14283b; color:#fff; font-size:.78rem; box-shadow:0 10px 30px rgba(10,28,44,.24); }
.dashboard-drop-hint[hidden] { display:none !important; }

@media (max-width:1200px) {
    .dashboard-widget.widget-size-small,
    .dashboard-widget.widget-size-medium { grid-column:span 6; }
    .dashboard-customizer-list { grid-template-columns:1fr; }
}
@media (max-width:760px) {
    .dashboard-widget.widget-size-small,
    .dashboard-widget.widget-size-medium,
    .dashboard-widget.widget-size-large { grid-column:span 12; }
    .dashboard-customizer { padding:16px; }
    .dashboard-customizer-row { grid-template-columns:1fr; }
    .dashboard-customizer-actions { align-items:stretch; flex-direction:column-reverse; }
    .dashboard-customizer-actions > div { align-items:stretch; flex-direction:column; }
    .dashboard-kpi-grid { grid-template-columns:1fr; }
}

/* fiebigerCMS 1.0.25 · Content-Builder */
.content-builder-head { align-items:flex-end; }
.content-builder-toolbar-panel { margin-bottom:20px; }
.content-block-add-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-top:16px; }
.content-block-add { min-height:54px; display:flex; align-items:center; gap:9px; padding:12px 14px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); color:var(--text); font:inherit; font-weight:800; cursor:pointer; text-align:left; }
.content-block-add:hover { background:#fff; border-color:#b9c9d8; transform:translateY(-1px); }
.content-block-add span { width:24px; height:24px; display:grid; place-items:center; border-radius:8px; background:#e5eef5; color:#365b74; }
.content-builder-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; align-items:start; }
.content-builder-sidebar .sticky-panel { position:sticky; top:18px; display:grid; gap:13px; }
.content-block-list { display:grid; gap:16px; }
.content-builder-empty[hidden] { display:none; }
.content-builder-block { border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 12px 32px rgba(22,43,63,.05); overflow:hidden; }
.content-builder-block.is-hidden { opacity:.58; }
.content-builder-block.is-dragging { opacity:.5; transform:scale(.99); }
.content-builder-block-head { display:flex; align-items:center; gap:12px; padding:13px 15px; border-bottom:1px solid var(--line); background:#f8fafc; }
.content-builder-block-head > div:nth-child(2) { min-width:0; display:grid; gap:1px; margin-right:auto; }
.content-builder-block-head strong { font-size:.92rem; }
.content-builder-block-actions { display:flex; align-items:center; gap:7px; }
.content-builder-drag { width:34px; height:34px; border:0; border-radius:10px; background:#e9f0f6; color:#5f7487; cursor:grab; font-weight:900; letter-spacing:-.15em; }
.content-builder-block-body { padding:18px; display:grid; gap:14px; }
.content-builder-block-body label { display:grid; gap:7px; }
.content-builder-block-body label > span { font-weight:800; font-size:.82rem; }
.content-builder-block-body input,.content-builder-block-body select,.content-builder-block-body textarea { width:100%; }
.content-builder-block-body select[multiple] { min-height:180px; }
.mini-toggle { display:flex !important; align-items:center; gap:6px !important; color:var(--muted); font-size:.72rem; }
.mini-toggle input { width:16px !important; height:16px; }
.content-column-editors { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.faq-editor-row { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) 36px; gap:9px; margin-bottom:9px; align-items:start; }
.global-block-list { display:grid; gap:12px; }
.global-block-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.global-block-card.is-inactive { opacity:.6; }
.global-block-card > div:first-child { display:grid; gap:5px; }
.global-block-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.global-block-actions form { display:flex; gap:7px; align-items:center; }
.global-block-actions input { min-width:220px; }
.content-builder-active-card { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px; border:1px solid #bfd8e8; border-radius:16px; background:#eef8fc; }
.content-builder-active-card > div { display:grid; gap:5px; }
.content-builder-active-card p { margin:0; color:var(--muted); line-height:1.55; }
@media (max-width:1200px) { .content-block-add-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.content-builder-layout{grid-template-columns:1fr}.content-builder-sidebar .sticky-panel{position:static}.content-column-editors{grid-template-columns:1fr 1fr;} }
@media (max-width:760px) { .content-block-add-grid{grid-template-columns:1fr 1fr}.content-builder-block-head{align-items:flex-start;flex-wrap:wrap}.content-builder-block-actions{width:100%;justify-content:flex-end}.content-column-editors,.faq-editor-row{grid-template-columns:1fr}.global-block-card,.content-builder-active-card{align-items:stretch;flex-direction:column}.global-block-actions{justify-content:stretch}.global-block-actions form{width:100%;flex-wrap:wrap}.global-block-actions input{min-width:0;flex:1}.content-block-add{min-height:48px;} }

/* 1.0.26 · E-Mail-Center */
.email-stat-grid{margin-bottom:24px}.email-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.email-option-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:4px}.email-option-grid .check-card{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid var(--border,#dfe5ec);border-radius:14px;background:var(--panel-soft,#f8fafc)}.email-option-grid .check-card input{margin-top:3px}.email-option-grid .check-card span{display:grid;gap:3px}.email-option-grid .check-card small{color:var(--muted,#667085);line-height:1.45}.email-option-grid .check-card.is-warning{border-color:#f5c2c7;background:#fff8f8}.email-test-form{display:flex;align-items:end;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid var(--border,#e5e7eb)}.email-test-form label{flex:1;max-width:520px}.email-template-list{display:grid;gap:12px}.email-template-card{border:1px solid var(--border,#e3e8ef);border-radius:16px;background:#fff;overflow:hidden}.email-template-card>summary{list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 18px;cursor:pointer}.email-template-card>summary::-webkit-details-marker{display:none}.email-template-card>summary>span:first-child{display:grid;gap:3px}.email-template-card>summary small{color:var(--muted,#667085)}.email-template-card[open]>summary{border-bottom:1px solid var(--border,#e3e8ef);background:#f8fafc}.email-template-card form{padding:18px}.email-template-card textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}.mail-error-text{display:block;max-width:320px;margin-top:5px;color:#b42318;line-height:1.35;white-space:normal}.admin-table .status-pill--danger{background:#fff1f1;color:#b42318;border-color:#fecaca}@media(max-width:1100px){.email-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.email-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.email-settings-grid,.email-option-grid{grid-template-columns:1fr}.email-test-form{align-items:stretch;flex-direction:column}.email-template-card>summary{align-items:flex-start}.email-template-card>summary>span:last-child{display:none}}

/* 1.0.26.1 · frei anlegbare E-Mail-Vorlagen */
.email-routing-block{margin-top:22px;padding-top:20px;border-top:1px solid var(--border,#e5e7eb)}
.section-subheading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.section-subheading h3{margin:2px 0 0}.section-subheading small{color:var(--muted,#667085)}
.email-routing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.email-variable-guide{display:flex;flex-wrap:wrap;align-items:center;gap:7px 9px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border,#e3e8ef);border-radius:14px;background:var(--panel-soft,#f8fafc);color:var(--muted,#667085);font-size:.82rem}
.email-variable-guide strong,.email-variable-guide span{color:var(--text,#1d2939)}
.email-variable-guide code{padding:3px 7px;border:1px solid var(--border,#e3e8ef);border-radius:7px;background:#fff;font-size:.76rem}
.email-template-create{margin-bottom:16px;border:1px dashed #9fb8ca;border-radius:16px;background:#f7fbfd;overflow:hidden}
.email-template-create>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;cursor:pointer}
.email-template-create>summary::-webkit-details-marker{display:none}.email-template-create>summary>span:first-child{display:grid;gap:3px}.email-template-create>summary small{color:var(--muted,#667085)}
.email-template-create[open]>summary{border-bottom:1px solid var(--border,#e3e8ef);background:#eef7fb}.email-template-create form{padding:18px}
.email-template-card.is-custom{border-left:3px solid #8fc4df}.email-template-card.is-system{border-left:3px solid #c7d0dc}
.email-template-kind{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border:1px solid var(--border,#e3e8ef);border-radius:999px;background:#f8fafc;color:var(--muted,#667085);font-size:.72rem;font-weight:700;white-space:nowrap}
.email-template-card.is-custom .email-template-kind{background:#eef8fc;color:#17627e;border-color:#c5e3ee}
.email-template-secondary-actions{display:flex;align-items:center;gap:9px;padding:0 18px 18px}.email-template-secondary-actions form{margin:0}.email-template-secondary-actions small{color:var(--muted,#667085)}
.email-template-secondary-actions button[disabled]{opacity:.48;cursor:not-allowed}
@media(max-width:1100px){.email-routing-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.email-routing-grid{grid-template-columns:1fr}.section-subheading{align-items:flex-start;flex-direction:column}.email-template-secondary-actions{align-items:stretch;flex-direction:column}.email-template-secondary-actions form,.email-template-secondary-actions button{width:100%}}

/* 1.0.26.2 · Abstand Speichern-Button im E-Mail-Center */
.email-settings-actions {
    margin-top: 16px;
}

/* 1.0.27 · Redaktions-Freigaben */
.nav-review-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 7px;margin-left:auto;border-radius:999px;background:#fff3d6;color:#8a5a00;font-size:.72rem;font-weight:800;line-height:1}
.editorial-workflow-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;border:1px solid #c9ddec;border-radius:16px;background:#f3f9fc}
.editorial-workflow-banner>div{display:grid;gap:4px}.editorial-workflow-banner strong{font-size:1rem}.editorial-workflow-banner p{margin:0;color:var(--muted,#667085);line-height:1.5}.editorial-workflow-banner.is-draft{border-color:#d9dfeb;background:#f8fafc}.editorial-workflow-banner.is-reviewer{border-color:#c9eadb;background:#f2fbf7}
.editorial-permission-note{display:grid;gap:4px;padding:12px 14px;border:1px solid #d9e1ea;border-radius:13px;background:#f8fafc}.editorial-permission-note strong{font-size:.92rem}.editorial-permission-note span{color:var(--muted,#667085);font-size:.84rem;line-height:1.45}
.editorial-submit-box{display:grid;gap:12px;margin-top:6px;padding-top:16px;border-top:1px solid var(--border,#e3e8ef)}.editorial-submit-box>div:first-child{display:grid;gap:3px}.editorial-submit-box>div:first-child small{color:var(--muted,#667085)}.editorial-submit-button{margin-top:2px}
.page-status-stack{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.workflow-mini-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef4f8;color:#456478;font-size:.7rem;font-weight:750;white-space:nowrap}.workflow-mini-badge.is-review{background:#fff4d8;color:#8d5d00;text-decoration:none}.workflow-mini-badge.is-review:hover{text-decoration:underline}
.review-stat-grid{margin-bottom:18px}.review-list-panel{overflow:hidden}.review-request-list{display:grid;gap:10px}.review-request-card{display:grid;grid-template-columns:minmax(0,1fr) 180px 30px;align-items:center;gap:18px;padding:15px 16px;border:1px solid var(--border,#e3e8ef);border-radius:14px;background:#fff;color:inherit;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.review-request-card:hover{border-color:#aac6d8;box-shadow:0 8px 24px rgba(23,55,78,.07);transform:translateY(-1px)}.review-request-main{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:5px 10px;min-width:0}.review-request-main strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-request-main small{grid-column:1/-1;color:var(--muted,#667085)}.review-request-target{display:grid;gap:2px}.review-request-target small,.review-request-target span{color:var(--muted,#667085);font-size:.78rem}.review-request-arrow{font-size:1.25rem;color:#678195}.review-status-pending{background:#fff4d8;color:#8d5d00}.review-status-approved{background:#e9f8f1;color:#16744d}.review-status-rejected{background:#fff0ef;color:#a43a32}.review-status-cancelled{background:#f1f3f6;color:#667085}
.review-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.review-detail-main{display:grid;gap:18px}.review-detail-side{display:grid;gap:18px;position:sticky;top:92px}.review-summary-card{overflow:hidden}.review-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.review-summary-grid>div{display:grid;gap:3px;padding:13px 14px;border:1px solid var(--border,#e3e8ef);border-radius:13px;background:#f8fafc}.review-summary-grid small,.review-summary-grid span{color:var(--muted,#667085);font-size:.8rem}.review-message{margin-top:14px;padding:13px 14px;border:1px solid #d7e5ee;border-radius:13px;background:#f6fafc}.review-message small{display:block;margin-bottom:4px;color:var(--muted,#667085);font-weight:700}.review-message p{margin:0;line-height:1.55}.review-message-decision{border-color:#d9e7df;background:#f5faf7}
.review-field-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.review-field-list>div{display:grid;gap:3px;padding:11px 0;border-bottom:1px solid var(--border,#e8ecf1)}.review-field-list small{color:var(--muted,#667085);font-size:.78rem}.review-field-list span{word-break:break-word}.review-comments{display:grid;gap:10px}.review-comments article{padding:13px 14px;border:1px solid var(--border,#e3e8ef);border-radius:13px;background:#f9fbfc}.review-comments article>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-comments time{color:var(--muted,#667085);font-size:.76rem}.review-comments p{margin:8px 0 0;line-height:1.55}.review-comment-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border,#e3e8ef)}.review-decision-card form{display:grid;gap:10px}.review-decision-card form+form{margin-top:16px;padding-top:16px;border-top:1px solid var(--border,#e3e8ef)}.review-approve-button{width:100%}
@media(max-width:1000px){.review-detail-grid{grid-template-columns:1fr}.review-detail-side{position:static}.review-request-card{grid-template-columns:minmax(0,1fr) 150px 24px}}
@media(max-width:700px){.editorial-workflow-banner{align-items:flex-start;flex-direction:column}.editorial-workflow-banner .button{width:100%}.review-request-card{grid-template-columns:1fr}.review-request-target{padding-top:9px;border-top:1px solid var(--border,#e3e8ef)}.review-request-arrow{display:none}.review-summary-grid,.review-field-list{grid-template-columns:1fr}.nav-review-badge{margin-left:8px}}

/* fiebigerCMS 1.0.28 · Import & Export */
.transfer-hero {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 22px;
    padding: 30px;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(30, 41, 59, .92));
    box-shadow: 0 18px 45px rgba(15, 23, 42, .12);
    overflow: hidden;
    position: relative;
}
.transfer-hero::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -90px;
    top: -130px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(56, 189, 248, .26), rgba(56, 189, 248, 0) 68%);
    pointer-events: none;
}
.transfer-hero h1 {
    margin: 5px 0 10px;
    color: #fff;
    font-size: clamp(28px, 3vw, 42px);
    letter-spacing: -.04em;
}
.transfer-hero p {
    max-width: 760px;
    margin: 0;
    color: #cbd5e1;
    line-height: 1.7;
}
.transfer-hero .eyebrow { color: #7dd3fc; }
.transfer-hero-badge {
    min-width: 230px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 5px;
    padding: 20px 22px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: rgba(255,255,255,.07);
    backdrop-filter: blur(10px);
    position: relative;
    z-index: 1;
}
.transfer-hero-badge > span {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 8px;
    background: rgba(56, 189, 248, .16);
    color: #bae6fd;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}
.transfer-hero-badge strong { color: #fff; font-size: 18px; }
.transfer-hero-badge small { color: #94a3b8; line-height: 1.45; }

.transfer-stats {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 22px;
}
.transfer-stats article {
    min-height: 106px;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 12px;
    padding: 17px;
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 17px;
    background: var(--panel, #fff);
    box-shadow: 0 8px 24px rgba(15, 23, 42, .04);
}
.transfer-stats article > span {
    grid-row: 1 / 3;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: rgba(14, 165, 233, .1);
    color: #0284c7;
    font-size: 19px;
}
.transfer-stats strong { align-self: end; font-size: 22px; line-height: 1; }
.transfer-stats small { align-self: start; color: var(--muted, #64748b); }

.transfer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}
.transfer-panel { padding: 0; overflow: hidden; }
.transfer-panel-head {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 24px 24px 20px;
    border-bottom: 1px solid var(--border, #e2e8f0);
}
.transfer-panel-head h2 { margin: 4px 0 6px; }
.transfer-panel-head p { margin: 0; color: var(--muted, #64748b); line-height: 1.55; }
.transfer-panel-icon {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: linear-gradient(145deg, rgba(14,165,233,.14), rgba(99,102,241,.12));
    color: #0369a1;
    font-size: 24px;
    font-weight: 800;
}
.transfer-form { display: grid; gap: 18px; padding: 22px 24px 24px; }
.transfer-check-grid { display: grid; gap: 10px; }
.transfer-check-card {
    display: grid;
    grid-template-columns: auto auto 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 13px 14px;
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 14px;
    background: rgba(248, 250, 252, .58);
    cursor: pointer;
    transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.transfer-check-card:hover {
    border-color: rgba(14,165,233,.46);
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(15,23,42,.05);
}
.transfer-check-card:has(input:checked) {
    border-color: rgba(14,165,233,.48);
    background: rgba(14,165,233,.055);
}
.transfer-check-card input,
.transfer-media-option input,
.transfer-mode-card input { accent-color: #0284c7; }
.transfer-check-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(14,165,233,.09);
    color: #0369a1;
}
.transfer-check-card span:nth-of-type(2) { display: grid; gap: 2px; }
.transfer-check-card small { color: var(--muted, #64748b); line-height: 1.35; }
.transfer-check-card b {
    min-width: 34px;
    text-align: center;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(100,116,139,.1);
    font-size: 12px;
}
.transfer-media-option {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    border-radius: 14px;
    background: rgba(2,132,199,.06);
    cursor: pointer;
}
.transfer-media-option input { margin-top: 3px; }
.transfer-media-option span { display: grid; gap: 3px; }
.transfer-media-option small { color: var(--muted, #64748b); line-height: 1.45; }
.transfer-security-note,
.transfer-warning-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 15px;
    border-radius: 14px;
    line-height: 1.5;
}
.transfer-security-note { background: rgba(16,185,129,.08); color: #065f46; }
.transfer-warning-note { background: rgba(245,158,11,.1); color: #92400e; }
.transfer-security-note > span,
.transfer-warning-note > span {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: rgba(255,255,255,.7);
    font-weight: 900;
}
.transfer-security-note p,
.transfer-warning-note p { margin: 0; }
.transfer-primary { justify-self: start; min-width: 190px; }

.transfer-dropzone {
    min-height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 26px;
    text-align: center;
    border: 1.5px dashed rgba(14,165,233,.52);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(14,165,233,.055), rgba(248,250,252,.5));
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, transform .16s ease;
}
.transfer-dropzone:hover { border-color: #0284c7; background: rgba(14,165,233,.075); transform: translateY(-1px); }
.transfer-dropzone input { width: min(100%, 320px); margin-top: 10px; }
.transfer-dropzone small { max-width: 430px; color: var(--muted, #64748b); line-height: 1.45; }
.transfer-drop-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    margin-bottom: 5px;
    border-radius: 15px;
    background: #0f172a;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .08em;
}
.transfer-mode-group { display: grid; gap: 10px; }
.transfer-field-label { font-weight: 800; font-size: 13px; color: var(--muted, #64748b); text-transform: uppercase; letter-spacing: .055em; }
.transfer-mode-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 15px;
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 14px;
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease;
}
.transfer-mode-card:has(input:checked) { border-color: rgba(14,165,233,.48); background: rgba(14,165,233,.055); }
.transfer-mode-card input { margin-top: 3px; }
.transfer-mode-card span { display: grid; gap: 3px; }
.transfer-mode-card small { color: var(--muted, #64748b); line-height: 1.45; }

.transfer-detail-panel { margin-top: 20px; padding: 22px 24px; }
.transfer-detail-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.transfer-detail-head h2 { margin: 4px 0 0; }
.transfer-plugin-list { display: grid; gap: 10px; }
.transfer-plugin-list article {
    display: grid;
    grid-template-columns: auto minmax(170px, .7fr) 1fr;
    align-items: center;
    gap: 14px;
    padding: 14px 15px;
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 14px;
    background: rgba(248,250,252,.52);
}
.transfer-plugin-mark {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: rgba(99,102,241,.1);
    color: #4f46e5;
}
.transfer-plugin-list article > div:nth-child(2) { display: grid; gap: 2px; }
.transfer-plugin-list small { color: var(--muted, #64748b); }
.transfer-plugin-tables { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.transfer-plugin-tables code { padding: 5px 8px; border-radius: 8px; background: rgba(15,23,42,.06); font-size: 12px; }

@media (max-width: 1180px) {
    .transfer-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .transfer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .transfer-hero { flex-direction: column; padding: 22px; }
    .transfer-hero-badge { min-width: 0; }
    .transfer-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .transfer-panel-head { padding: 20px; }
    .transfer-form { padding: 20px; }
    .transfer-plugin-list article { grid-template-columns: auto 1fr; }
    .transfer-plugin-tables { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 480px) {
    .transfer-stats { grid-template-columns: 1fr; }
    .transfer-check-card { grid-template-columns: auto 1fr auto; }
    .transfer-check-card > input { grid-row: 1 / 3; }
    .transfer-check-icon { display: none; }
}

/* fiebigerCMS 1.0.29 · Theme & Design-System */
.theme-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.theme-card{overflow:hidden;padding:0}.theme-card.is-active{box-shadow:0 0 0 2px rgba(49,88,112,.18),0 18px 50px rgba(30,50,70,.08)}.theme-swatch{height:92px;background:linear-gradient(135deg,var(--swatch-bg),var(--swatch-surface));display:flex;align-items:flex-end;padding:16px;gap:8px;border-bottom:1px solid #e1e8ef}.theme-swatch span{display:block;width:48px;height:18px;border-radius:999px;background:var(--swatch-primary)}.theme-swatch span:nth-child(2){width:28px;background:var(--swatch-accent)}.theme-swatch span:nth-child(3){width:18px;background:#fff;border:1px solid rgba(0,0,0,.1)}.theme-card-body{padding:20px}.theme-card-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.theme-card-title h2{margin:2px 0 0}.theme-card-body p{color:#667386;min-height:44px}.theme-card-body small{color:#7a8798}.theme-card-actions{padding:14px 20px 20px;border-top:1px solid #e7edf3;display:flex;flex-wrap:wrap;gap:8px}.theme-card-actions form{margin:0}.theme-library-head{display:flex;align-items:center;justify-content:space-between;gap:24px}.theme-import-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.theme-import-inline input[type=file]{max-width:260px}.theme-color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.color-input{display:flex;align-items:center;gap:9px;margin-top:7px}.color-input input[type=color]{width:52px;height:42px;border:1px solid #cad5e1;border-radius:9px;padding:3px;background:#fff}.color-input code{font-size:.82rem;color:#667386}.code-textarea{min-height:300px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;tab-size:2}.inline-check{display:flex;align-items:center;gap:7px;margin-top:7px;font-size:.86rem;color:#667386}.inline-check input{width:auto}.page-head-actions{display:flex;gap:8px;flex-wrap:wrap}.sticky-form-actions{position:sticky;bottom:14px;z-index:8;display:flex;align-items:center;gap:16px;padding:13px 16px;border:1px solid #dbe4ec;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 14px 36px rgba(28,45,65,.12);backdrop-filter:blur(10px)}.sticky-form-actions span{color:#667386;font-size:.86rem}@media(max-width:760px){.theme-library-head{align-items:flex-start;flex-direction:column}.theme-card-grid{grid-template-columns:1fr}.sticky-form-actions{bottom:8px}}
.theme-swatch{background:linear-gradient(135deg,#eef3f7,#ffffff)}.theme-swatch span{background:#315870}.theme-swatch span:nth-child(2){background:#d8a63d}

/* fiebigerCMS 1.0.30 · Template-System */
.template-library-intro{display:flex;align-items:center;justify-content:space-between;gap:28px}.template-library-intro>div{max-width:760px}.template-library-intro h2,.template-syntax-help h2{margin:.15rem 0 .45rem}.template-library-intro p,.template-syntax-help p{margin:0;color:var(--muted,#64748b)}
.template-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:22px;margin-bottom:24px}.template-card{padding:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto}.template-card.is-active{border-color:#8bb7a4;box-shadow:0 18px 52px rgba(29,78,63,.10)}.template-card-preview{position:relative;min-height:188px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 25% 30%,rgba(87,126,157,.2),transparent 34%),linear-gradient(145deg,#102331,#315870)}.template-card-preview>span{font-size:4rem;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.9)}.template-card-preview>img{width:100%;height:188px;object-fit:cover;display:block}.template-preview-badge{position:absolute;left:16px;bottom:14px;padding:6px 10px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(9,24,35,.7);backdrop-filter:blur(8px);color:#fff;font-size:.74rem;font-weight:800}.template-card-body{padding:22px 22px 16px}.template-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.template-card-title h2{margin:.15rem 0 .45rem}.template-card-body p{min-height:3.2em;margin:.2rem 0 14px;color:var(--muted,#64748b)}.template-meta-row{display:flex;flex-wrap:wrap;gap:8px}.template-meta-row span{padding:5px 8px;border:1px solid #e0e8ef;border-radius:8px;background:#f8fafc;color:#5e6b7a;font-size:.76rem;font-weight:700}.template-card-actions{padding:0 22px 22px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.template-card-actions form{margin:0}.template-syntax-help{margin-top:8px}.template-token-grid{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.template-token-grid code,.template-create-note code,.template-upload-standalone code,.template-system-copy code{padding:5px 8px;border:1px solid #dce5ed;border-radius:8px;background:#f7f9fb;color:#294b62;font-size:.78rem}
.template-editor-form{display:grid;gap:22px}.template-create-note{display:flex;align-items:flex-start;gap:12px;margin-top:18px;padding:16px 18px;border:1px solid #d9e5ee;border-radius:14px;background:#f7fafc}.template-create-note span{color:#607081}.template-file-stack{display:grid;gap:12px;margin-top:20px}.template-code-file{border:1px solid #dce5ed;border-radius:14px;background:#fbfcfd;overflow:hidden}.template-code-file summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;cursor:pointer;list-style:none}.template-code-file summary::-webkit-details-marker{display:none}.template-code-file summary span{display:grid;gap:2px}.template-code-file summary small{color:#788596}.template-code-file summary code{padding:4px 7px;border-radius:7px;background:#eaf0f5;color:#496071;font-size:.72rem}.template-code-file[open] summary{border-bottom:1px solid #dce5ed}.template-code-editor{border:0!important;border-radius:0!important;min-height:260px;background:#111923!important;color:#d9e7ef!important;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace!important;font-size:.82rem!important;line-height:1.65!important;tab-size:4}.template-assets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:18px}.template-asset-card{display:grid;grid-template-columns:78px minmax(0,1fr);gap:13px;align-items:center;padding:12px;border:1px solid #dce5ed;border-radius:14px;background:#fbfcfd}.template-asset-thumb{width:78px;height:68px;border-radius:10px;overflow:hidden;background:#edf2f6}.template-asset-thumb img{width:100%;height:100%;object-fit:cover;display:block}.template-asset-card>div:nth-child(2){display:grid;gap:2px;min-width:0}.template-asset-card code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#587082;font-size:.7rem}.template-asset-card small{color:#7a8796}.template-asset-card form{grid-column:1/-1;margin:0}.template-upload-standalone,.template-system-copy{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:22px}.template-upload-standalone h2,.template-system-copy h2{margin:.12rem 0 .35rem}.template-upload-standalone p,.template-system-copy p{margin:0;color:#64748b}.template-upload-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-template-panel{border-color:#d8e4ed}.page-template-panel .panel-head{align-items:center}
@media(max-width:780px){.template-library-intro,.template-upload-standalone,.template-system-copy{align-items:stretch;flex-direction:column}.template-card-grid{grid-template-columns:1fr}.template-upload-actions{align-items:stretch;flex-direction:column}.template-asset-card{grid-template-columns:64px minmax(0,1fr)}.template-asset-thumb{width:64px;height:58px}}
.template-asset-card>.danger-button{grid-column:1/-1;justify-self:start}

/* fiebigerCMS 1.0.31 · Templates & Design zusammengeführt */
.design-hub-head{align-items:flex-end}.design-hub-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}.design-hub-stats article{display:grid;gap:4px;padding:18px 20px;border:1px solid #dce5ed;border-radius:16px;background:linear-gradient(145deg,#fff,#f7fafc);box-shadow:0 12px 32px rgba(30,50,70,.055)}.design-hub-stats span{color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.design-hub-stats strong{font-size:1.8rem;line-height:1;color:#20384a}.design-hub-stats small{color:#718096}.design-hub-tabs{position:sticky;top:10px;z-index:7;display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin:0 0 20px;padding:6px;border:1px solid #dce5ed;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(30,50,70,.08);backdrop-filter:blur(10px)}.design-hub-tabs a{padding:8px 13px;border-radius:10px;color:#5d6d7d;font-size:.82rem;font-weight:800;text-decoration:none}.design-hub-tabs a:hover,.design-hub-tabs a.is-active{background:#eef4f8;color:#294b62}.design-variant-library{margin-top:28px;scroll-margin-top:90px}.design-variant-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.design-variant-library-head h2{margin:.15rem 0 .45rem}.design-variant-library-head p{max-width:780px;margin:0;color:#64748b}.design-variant-import{margin:18px 0 20px;padding:14px 16px;border:1px dashed #ccd9e3;border-radius:13px;background:#f8fafc}.integrated-theme-grid{margin-top:0}.design-usage-strip{display:flex;align-items:center;justify-content:space-between;gap:22px}.design-usage-strip h2{margin:.15rem 0 0}.design-usage-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.template-design-panel{border-color:#cedee8;background:linear-gradient(145deg,#fff,#f9fbfd)}.template-design-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px}.template-design-panel-grid p{max-width:720px;margin:.45rem 0 0;color:#64748b}.template-design-swatch{display:flex;gap:7px;margin-top:13px}.template-design-swatch i{display:block;width:54px;height:12px;border-radius:999px;background:var(--swatch-primary)}.template-design-swatch i:nth-child(2){width:34px;background:var(--swatch-accent)}.template-design-swatch i:nth-child(3){width:22px;background:var(--swatch-bg);border:1px solid #dce5ed}@media(max-width:900px){.design-hub-stats{grid-template-columns:1fr}.design-variant-library-head,.design-usage-strip{align-items:stretch;flex-direction:column}.design-usage-links{justify-content:flex-start}.template-design-panel-grid{grid-template-columns:1fr}.design-hub-tabs{width:100%;overflow:auto}.design-hub-tabs a{white-space:nowrap}}

/* fiebigerCMS 1.0.32 · Medienverwaltung 2.0 */
.media-stat-grid {
    grid-template-columns: repeat(5,minmax(0,1fr));
}
.media-manager-layout {
    display: grid;
    grid-template-columns: minmax(230px,280px) minmax(0,1fr);
    gap: 22px;
    align-items: start;
}
.media-folder-sidebar {
    position: sticky;
    top: 92px;
}
.media-folder-panel {
    display: grid;
    gap: 18px;
}
.media-folder-list {
    display: grid;
    gap: 6px;
}
.media-folder-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 42px;
    padding: 9px 11px;
    border: 1px solid transparent;
    border-radius: 11px;
    color: var(--text);
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.media-folder-link:hover {
    border-color: var(--line);
    background: var(--surface-soft);
    transform: translateX(2px);
}
.media-folder-link.is-active {
    border-color: color-mix(in srgb,var(--brand) 35%,var(--line));
    background: color-mix(in srgb,var(--brand) 9%,var(--surface));
}
.media-folder-link small {
    min-width: 28px;
    text-align: right;
    color: var(--muted);
}
.media-folder-label[data-depth="1"] { padding-left: 14px; }
.media-folder-label[data-depth="2"] { padding-left: 28px; }
.media-folder-label[data-depth="3"] { padding-left: 42px; }
.media-folder-label[data-depth="4"] { padding-left: 56px; }
.media-folder-label[data-depth="5"] { padding-left: 70px; }
.media-folder-create,
.media-folder-edit {
    border-top: 1px solid var(--line);
    padding-top: 14px;
}
.media-folder-create summary,
.media-folder-edit summary {
    cursor: pointer;
    font-weight: 700;
    color: var(--text);
}
.media-folder-create form,
.media-folder-edit form {
    display: grid;
    gap: 11px;
    margin-top: 12px;
}
.media-manager-main {
    min-width: 0;
    display: grid;
    gap: 22px;
}
.media-filter-grid {
    display: grid;
    grid-template-columns: minmax(220px,2fr) repeat(5,minmax(125px,1fr));
    gap: 12px;
    align-items: end;
    margin-bottom: 20px;
}
.media-filter-grid label {
    margin: 0;
}
.media-filter-search {
    min-width: 0;
}
.media-filter-actions {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.media-library-grid--v2 {
    grid-template-columns: repeat(3,minmax(0,1fr));
}
.media-card--v2 {
    overflow: hidden;
}
.media-card--v2 .media-preview {
    position: relative;
    display: flex;
    min-height: 190px;
    text-decoration: none;
}
.media-card--v2 .media-preview img {
    width: 100%;
    height: 100%;
    min-height: 190px;
    max-height: 240px;
    object-fit: cover;
}
.media-card-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(16,24,40,.82);
    color: #fff;
    font-size: 11px;
    font-style: normal;
    backdrop-filter: blur(8px);
}
.media-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    color: var(--muted);
    font-size: 12px;
}
.media-card-meta span {
    position: relative;
}
.media-card-meta span:not(:last-child)::after {
    content: "·";
    position: absolute;
    right: -8px;
}
.media-alt-warning,
.field-warning {
    color: var(--warning,#9a6700);
    font-size: 12px;
    font-weight: 700;
}
.media-detail-layout {
    display: grid;
    grid-template-columns: minmax(0,1.65fr) minmax(280px,.65fr);
    gap: 22px;
    align-items: start;
}
.media-detail-layout > main {
    display: grid;
    gap: 22px;
}
.media-detail-sidebar {
    display: grid;
    gap: 18px;
}
.media-detail-preview-panel {
    display: grid;
    gap: 18px;
}
.media-detail-image {
    display: grid;
    place-items: center;
    min-height: 320px;
    max-height: 680px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background:
        linear-gradient(45deg,rgba(127,127,127,.06) 25%,transparent 25%) 0 0/22px 22px,
        linear-gradient(45deg,transparent 75%,rgba(127,127,127,.06) 75%) 0 0/22px 22px,
        var(--surface-soft);
}
.media-detail-image img {
    width: 100%;
    height: 100%;
    max-height: 680px;
    object-fit: contain;
}
.media-detail-document {
    min-height: 300px;
    display: grid;
    place-items: center;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--surface-soft);
}
.media-detail-document span {
    display: grid;
    place-items: center;
    width: 92px;
    aspect-ratio: 1;
    border-radius: 22px;
    background: color-mix(in srgb,var(--brand) 10%,var(--surface));
    color: var(--brand);
    font-size: 24px;
    font-weight: 800;
}
.media-detail-facts {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 10px;
}
.media-detail-facts span {
    display: grid;
    gap: 4px;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.media-detail-facts strong {
    color: var(--text);
    font-size: 12px;
}
.media-detail-url {
    display: grid;
    gap: 8px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
}
.media-detail-url code {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.media-usage-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 9px;
}
.media-usage-list span {
    display: grid;
    gap: 2px;
    padding: 11px;
    border-radius: 11px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: 12px;
}
.media-usage-list strong {
    color: var(--text);
    font-size: 20px;
}
.media-variant-form {
    display: grid;
    gap: 15px;
}
.media-variant-presets {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.media-variant-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
    margin-top: 20px;
}
.media-variant-card {
    display: grid;
    gap: 12px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--surface-soft);
}
.media-variant-card > a {
    display: block;
    overflow: hidden;
    border-radius: 11px;
    background: var(--surface);
}
.media-variant-card img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    display: block;
}
.media-variant-card > div:not(.row-actions) {
    display: grid;
    gap: 3px;
}
.media-variant-card small {
    color: var(--muted);
}
.media-variant-empty {
    margin-top: 18px;
}
.media-variant-form input[type="range"] {
    width: 100%;
}
.media-variant-form output {
    color: var(--brand);
    font-weight: 800;
}

@media (max-width: 1280px) {
    .media-stat-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .media-filter-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .media-library-grid--v2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .media-detail-facts { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
    .media-manager-layout,
    .media-detail-layout { grid-template-columns: 1fr; }
    .media-folder-sidebar { position: static; }
    .media-folder-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .media-detail-sidebar .sticky-panel { position: static; }
}
@media (max-width: 720px) {
    .media-stat-grid,
    .media-filter-grid,
    .media-library-grid--v2,
    .media-detail-facts,
    .media-variant-grid,
    .media-folder-list { grid-template-columns: 1fr; }
    .media-detail-image { min-height: 220px; }
}
.status-pill--warning { background:#fff5df; color:var(--warning); }
.notice { padding:14px 16px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); }
.notice strong { display:block; margin-bottom:3px; color:var(--text); }
.notice p { margin:0; }
.notice--warning { border-color:#f0d6a7; background:#fffaf0; }
.notice--info { border-color:#cfe0ea; background:#f5fafc; }
.media-detail-sidebar .danger-zone { display:grid; align-items:initial; justify-content:initial; gap:10px; }
.media-detail-sidebar .danger-zone form { display:block; }

/* fiebigerCMS 1.0.33 · globale Suche & interne Verlinkung */
.topbar-search-wrap{position:relative;margin-left:auto;margin-right:14px;width:min(420px,34vw);z-index:40}
.topbar-search-wrap .topbar-search{width:100%;margin:0}
.topbar-search-popover{position:absolute;top:calc(100% + 10px);right:0;width:min(620px,80vw);max-height:min(70vh,620px);overflow:auto;padding:10px;border:1px solid #dbe3ee;border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(18,42,64,.2)}
.topbar-search-popover[hidden]{display:none}
.topbar-search-popover section+section{margin-top:8px;padding-top:8px;border-top:1px solid #edf1f5}
.topbar-search-group-head{display:flex;align-items:center;gap:8px;padding:6px 8px;color:#607187;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em}
.topbar-search-popover a[data-search-suggestion]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:10px;color:inherit;text-decoration:none}
.topbar-search-popover a[data-search-suggestion]:hover,.topbar-search-popover a[data-search-suggestion].is-active{background:#eef6fb}
.topbar-search-popover a[data-search-suggestion]>span{display:grid;gap:2px;min-width:0}
.topbar-search-popover a[data-search-suggestion] strong,.topbar-search-popover a[data-search-suggestion] small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar-search-popover a[data-search-suggestion] small{color:#758399;font-size:.76rem}
.topbar-search-all{display:block;margin-top:8px;padding:11px 10px;border-top:1px solid #edf1f5;color:#245b78;text-decoration:none;font-weight:800;font-size:.82rem}
.topbar-search-empty{padding:18px;text-align:center;color:#758399}
.global-search-panel{display:grid;gap:14px}
.global-search-main{display:flex;align-items:center;gap:10px;flex:1}
.global-search-main>span{font-size:1.25rem;color:#6a7c90}
.global-search-main input{min-width:0}
.search-filter-chips{display:flex;flex-wrap:wrap;gap:8px}
.search-filter-chips a{padding:7px 10px;border:1px solid #dfe7ef;border-radius:999px;background:#f8fbfd;color:#53677b;text-decoration:none;font-size:.78rem;font-weight:800}
.search-filter-chips a:hover,.search-filter-chips a.is-active{border-color:#9fc1d5;background:#eaf5fb;color:#214f69}
.search-result-grid--wide{grid-template-columns:repeat(3,minmax(0,1fr))}
.search-start-state kbd{display:inline-block;padding:2px 6px;border:1px solid #dbe3ee;border-radius:6px;background:#fff;font:inherit;font-size:.78rem}
.internal-link-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.internal-link-field .button{white-space:nowrap}
.inline-editor-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 12px;border:1px dashed #ccd9e5;border-radius:12px;background:#f8fbfd}
.inline-editor-tools small{color:var(--muted)}
.content-link-helper-card{display:grid;gap:11px}
.content-link-helper-card h2,.content-link-helper-card p{margin:0}
.content-link-helper-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.content-link-helper-stats>span{display:grid;gap:2px;padding:10px;border:1px solid #e2e9f0;border-radius:11px;background:#f8fbfd}
.content-link-helper-stats strong{font-size:1.25rem;color:#284f68}
.content-link-helper-stats small{color:#718095;font-size:.72rem}
.internal-link-dialog{width:min(760px,calc(100vw - 32px));max-height:min(82vh,760px)}
.internal-link-search{display:flex;align-items:center;gap:9px;margin:14px 0;padding:8px 11px;border:1px solid #dce5ed;border-radius:12px;background:#f8fbfd}
.internal-link-search input{flex:1;min-width:0;border:0;background:transparent;padding:3px;box-shadow:none}
.internal-link-search input:focus{outline:0}
.internal-link-results{display:grid;gap:7px;max-height:470px;overflow:auto;padding-right:4px}
.internal-link-result{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border:1px solid #e2e8ef;border-radius:12px;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}
.internal-link-result:hover{border-color:#a9c8da;background:#f3f9fc}
.internal-link-result>span:first-child{display:grid;gap:2px;min-width:0}
.internal-link-result small{color:#718095;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1250px){.search-result-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.topbar-search-wrap{display:none}.search-result-grid--wide{grid-template-columns:1fr}}
@media(max-width:700px){.global-search-main{align-items:stretch;flex-direction:column}.global-search-main>span{display:none}.internal-link-field{grid-template-columns:1fr}.inline-editor-tools{align-items:stretch;flex-direction:column}.internal-link-result{align-items:flex-start;flex-direction:column}.content-link-helper-stats{grid-template-columns:1fr 1fr}}
.content-builder-field{display:grid;gap:7px}
.content-builder-field>span{font-weight:800;font-size:.82rem}

/* fiebigerCMS 1.0.34 · Formular-Autoresponder & E-Mail-Warteschlange */
.form-automation-section{overflow:hidden}.automation-info-strip{display:flex;align-items:flex-start;gap:12px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--line,#dfe6ec);border-radius:15px;background:var(--surface-soft,#f7fafc)}.automation-info-strip>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:#e9f4f9;font-size:1.05rem}.automation-info-strip>div{display:grid;gap:3px}.automation-info-strip small,.automation-variable-note{color:var(--muted,#667386);line-height:1.5}.form-automation-list{display:grid;gap:14px}.form-automation-card{display:grid;gap:15px;padding:17px;border:1px solid var(--line,#dfe6ec);border-radius:17px;background:linear-gradient(180deg,#fff 0%,#fbfdfe 100%);box-shadow:0 8px 22px rgba(23,43,60,.04)}.form-automation-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:11px;border-bottom:1px solid var(--line,#e4e9ee)}.form-automation-head>div{display:grid;gap:2px}.automation-number{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#718095)}.input-suffix{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line,#dfe6ec);border-radius:12px;background:#fff;overflow:hidden}.input-suffix input{border:0!important;border-radius:0!important;box-shadow:none!important}.input-suffix span{padding:0 12px;color:var(--muted,#667386);font-size:.82rem;font-weight:700;border-left:1px solid var(--line,#dfe6ec)}.automation-variable-note{margin-top:16px;padding:13px 15px;border-radius:14px;background:#f6f8fa;border:1px dashed #cfd8df}.automation-variable-note code{display:inline-block;margin:3px 2px;padding:2px 6px;border-radius:7px;background:#edf2f5;color:#34536a}.automation-empty{margin-top:4px}.mail-queue-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.mail-queue-stat{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--line,#dfe6ec);border-radius:15px;background:var(--surface-soft,#f8fafb)}.mail-queue-stat span{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,#6d7a8d)}.mail-queue-stat strong{font-size:1.35rem}.queue-source{display:grid;gap:2px}.queue-source small{color:var(--muted,#6d7a8d)}.queue-actions{display:flex;gap:7px;flex-wrap:wrap}.queue-error{display:block;max-width:360px;margin-top:4px;color:#b42318;line-height:1.35;white-space:normal}.status-pill--pending{background:#fff8e6;color:#8a5d00;border-color:#f2d38b}.status-pill--cancelled{background:#f2f4f7;color:#667085;border-color:#d0d5dd}.status-pill--sending{background:#eef8ff;color:#175cd3;border-color:#b2ddff}@media(max-width:900px){.mail-queue-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.mail-queue-stats{grid-template-columns:1fr}.form-automation-head{align-items:flex-start}.queue-actions{flex-direction:column}.queue-actions form,.queue-actions button{width:100%}}

/* 1.0.35 · persönliche Benachrichtigungsregeln */
.notification-heading-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.notification-heading-actions form { margin:0; }
.notification-preferences-panel { overflow:hidden; }
.notification-preferences-intro { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:4px 2px 20px; border-bottom:1px solid var(--line); }
.notification-preferences-intro > div:first-child { display:grid; gap:6px; max-width:760px; }
.notification-preferences-intro span { color:var(--muted); font-size:.9rem; line-height:1.5; }
.notification-preferences-legend { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.notification-preferences-legend span { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.notification-channel-dot { width:9px; height:9px; border-radius:50%; display:inline-block; background:#315870; }
.notification-channel-dot.email { background:#d8a63d; }
.notification-preferences-form { margin-top:18px; }
.notification-preferences-head { display:grid; grid-template-columns:minmax(0,1fr) 112px 112px; gap:12px; align-items:center; padding:0 16px 10px; color:var(--muted); font-size:.75rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.notification-preferences-head span:not(:first-child) { text-align:center; }
.notification-preference-list { display:grid; gap:8px; }
.notification-preference-row { display:grid; grid-template-columns:minmax(0,1fr) 112px 112px; gap:12px; align-items:center; padding:14px 16px; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); }
.notification-preference-copy { display:flex; align-items:center; gap:13px; min-width:0; }
.notification-preference-copy > div { display:grid; gap:3px; min-width:0; }
.notification-preference-copy strong { color:var(--ink); font-size:.94rem; }
.notification-preference-copy small { color:var(--muted); line-height:1.45; }
.notification-preference-icon { width:42px; height:42px; flex:0 0 42px; border-radius:13px; display:grid; place-items:center; background:#edf4f7; border:1px solid #dce8ed; color:var(--accent); font-size:1.05rem; font-weight:800; }
.compact-switch { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; user-select:none; }
.compact-switch input { position:absolute; opacity:0; pointer-events:none; }
.compact-switch span { width:42px; height:24px; border-radius:999px; background:#cbd5df; position:relative; transition:.18s ease; box-shadow:inset 0 0 0 1px rgba(20,38,55,.08); }
.compact-switch span::after { content:""; width:18px; height:18px; position:absolute; top:3px; left:3px; border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(24,39,55,.22); transition:.18s ease; }
.compact-switch input:checked + span { background:var(--accent); }
.compact-switch input:checked + span::after { transform:translateX(18px); }
.compact-switch input:focus-visible + span { outline:3px solid rgba(49,88,112,.18); outline-offset:2px; }
.compact-switch em { font-style:normal; font-size:.72rem; color:var(--muted); }
.notification-preferences-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:18px; padding-top:18px; border-top:1px solid var(--line); }
.notification-preferences-footer p { margin:0; max-width:760px; color:var(--muted); font-size:.86rem; line-height:1.5; }
@media (max-width:760px) {
    .notification-preferences-intro { display:grid; }
    .notification-preferences-head { display:none; }
    .notification-preference-row { grid-template-columns:minmax(0,1fr) 72px 72px; padding:14px 12px; }
    .notification-preference-copy small { display:none; }
    .notification-preferences-footer { align-items:stretch; flex-direction:column; }
    .notification-preferences-footer .primary-button { width:100%; }
}
@media (max-width:520px) {
    .notification-preference-row { grid-template-columns:1fr 1fr; }
    .notification-preference-copy { grid-column:1 / -1; }
    .compact-switch { flex-direction:row; }
}
.notification-popover-head-actions { display:flex; gap:10px; align-items:center; }

/* 1.0.36 · Plugin-Erweiterungs-API */
.plugin-api-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:10px; }
.plugin-api-meta small { color:var(--muted); font-weight:650; }
.plugin-extension-chips { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.plugin-extension-chips span { display:inline-flex; align-items:center; gap:4px; padding:6px 9px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--muted); font-size:.73rem; font-weight:750; text-transform:capitalize; }
.plugin-extension-chips strong { color:var(--text); }
.plugin-load-error { display:grid; gap:5px; margin:11px 0 0; padding:12px 14px; }
.plugin-load-error small { display:block; overflow-wrap:anywhere; line-height:1.45; }
.plugin-api-overview { margin-top:22px; }
.plugin-api-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.plugin-api-card { min-width:0; padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.plugin-api-card strong { display:block; margin-bottom:5px; color:var(--text); }
.plugin-api-card p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.plugin-api-version { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; border-radius:999px; background:#eaf4ef; color:#17643b; font-weight:850; font-size:.76rem; }

.content-block-add.is-plugin { border-color:#b9c9d8; background:linear-gradient(180deg,#f8fbfd 0%,#eef5f9 100%); }
.content-block-add.is-plugin span { background:#dcecf4; color:#245d79; }
.content-block-add.is-plugin:hover { border-color:#8fb2c5; background:#fff; }
.plugin-content-block-editor { display:grid; gap:15px; }
.plugin-content-block-intro { display:flex; align-items:flex-start; gap:10px; padding:11px 13px; border:1px solid var(--line); border-radius:12px; background:var(--surface-soft); color:var(--muted); font-size:.82rem; line-height:1.5; }
.plugin-content-block-intro strong { color:var(--text); }
.plugin-content-block-unavailable { padding:14px; border:1px dashed #c7d3dd; border-radius:12px; background:var(--surface-soft); color:var(--muted); font-size:.84rem; }

.plugin-mail-events { display:grid; gap:10px; margin-top:12px; }
.plugin-mail-event { padding:13px 14px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); }
.plugin-mail-event-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.plugin-mail-event strong { color:var(--text); }
.plugin-mail-event p { margin:5px 0 0; color:var(--muted); font-size:.8rem; line-height:1.45; }
.plugin-mail-event-vars { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.plugin-mail-event-vars code { font-size:.72rem; }

.dashboard-widget.is-plugin-widget .dashboard-widget-toolbar::after { content:"Plugin"; margin-left:auto; padding:3px 7px; border-radius:999px; background:#eaf2f7; color:#3e657d; font-size:.61rem; font-weight:900; letter-spacing:.04em; }
.dashboard-widget-plugin-refresh { color:var(--muted); font-size:.76rem; }

@media (max-width:1000px) {
    .plugin-api-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
    .plugin-api-grid { grid-template-columns:1fr; }
    .plugin-mail-event-head { align-items:flex-start; flex-direction:column; }
}
.email-variable-guide .plugin-mail-event { flex:1 1 100%; display:block; }
.email-variable-guide .plugin-mail-event code { display:inline-block; margin:4px 2px 0; }

/* 1.0.37 · Plugin-Abhängigkeiten & Kompatibilität */
.plugin-compat-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 22px; }
.plugin-compat-overview article { display:flex; align-items:center; gap:13px; padding:15px 17px; border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow:var(--shadow-soft); }
.plugin-compat-overview article > span { width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:#eaf4ef; color:#17643b; font-weight:900; }
.plugin-compat-overview article.has-warning > span { background:#fff2df; color:#9a5b05; }
.plugin-compat-overview article div { display:grid; gap:1px; }
.plugin-compat-overview strong { font-size:1.16rem; color:var(--text); }
.plugin-compat-overview small { color:var(--muted); font-weight:700; }
.plugin-compat-chips { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.plugin-compat-chips span { padding:5px 8px; border-radius:999px; border:1px solid var(--line); font-size:.7rem; font-weight:800; }
.plugin-compat-chips .is-ok { background:#eff8f3; border-color:#d1eadc; color:#17643b; }
.plugin-compat-chips .is-bad { background:#fff1ed; border-color:#f1d1c8; color:#9d3323; }
.plugin-relations { margin-top:11px; border:1px solid var(--line); border-radius:13px; background:var(--surface-soft); overflow:hidden; }
.plugin-relations summary { cursor:pointer; padding:10px 12px; color:var(--text); font-size:.78rem; font-weight:850; }
.plugin-relations[open] summary { border-bottom:1px solid var(--line); }
.plugin-relations-list { display:grid; gap:0; }
.plugin-relation { display:grid; grid-template-columns:25px 1fr; gap:8px; align-items:start; padding:10px 12px; }
.plugin-relation + .plugin-relation { border-top:1px solid var(--line); }
.plugin-relation > span { width:22px; height:22px; border-radius:50%; display:grid; place-items:center; font-size:.7rem; font-weight:900; }
.plugin-relation.is-ok > span { background:#eaf4ef; color:#17643b; }
.plugin-relation.is-bad > span { background:#fff0eb; color:#a63827; }
.plugin-relation div { display:grid; gap:2px; min-width:0; }
.plugin-relation strong { color:var(--text); font-size:.78rem; }
.plugin-relation small { color:var(--muted); font-size:.73rem; line-height:1.4; }
.plugin-dependents { margin-top:10px; padding:9px 11px; border-radius:11px; background:#edf5fa; color:#3c6177; font-size:.75rem; line-height:1.45; }
.plugin-dependents strong { color:#244f68; }
.plugin-card button[disabled] { opacity:.48; cursor:not-allowed; filter:grayscale(.15); }
@media (max-width:760px) { .plugin-compat-overview { grid-template-columns:1fr; } }

/* 1.0.38 · Systemexport & Umzugsassistent */
.system-migration {
    display: grid;
    gap: 20px;
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid var(--line);
}
.system-migration-head {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 28px 30px;
    border: 1px solid rgba(37,99,235,.16);
    border-radius: 24px;
    background:
        radial-gradient(circle at 86% 12%, rgba(14,165,233,.16), transparent 30%),
        linear-gradient(135deg, rgba(15,23,42,.98), rgba(30,41,59,.96));
    color: #fff;
    box-shadow: 0 18px 44px rgba(15,23,42,.14);
}
.system-migration-head::after {
    content: "";
    position: absolute;
    inset: auto -90px -110px auto;
    width: 280px;
    aspect-ratio: 1;
    border: 1px solid rgba(125,211,252,.18);
    border-radius: 50%;
    box-shadow: 0 0 0 34px rgba(125,211,252,.035), 0 0 0 68px rgba(125,211,252,.025);
    pointer-events: none;
}
.system-migration-head > div:first-child { position: relative; z-index: 1; max-width: 820px; }
.system-migration-head .eyebrow { color: #7dd3fc; }
.system-migration-head h2 { margin: 5px 0 8px; color: #fff; font-size: clamp(25px,3vw,38px); }
.system-migration-head p { margin: 0; color: #cbd5e1; line-height: 1.65; }
.system-migration-version {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 3px;
    min-width: 210px;
    padding: 16px 18px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 16px;
    background: rgba(255,255,255,.07);
    backdrop-filter: blur(8px);
}
.system-migration-version span { color: #7dd3fc; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.system-migration-version strong { font-size: 19px; }
.system-migration-version small { color: #94a3b8; overflow-wrap: anywhere; }
.migration-stat-grid {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 10px;
}
.migration-stat-grid article {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 2px 10px;
    padding: 14px 15px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--surface);
}
.migration-stat-grid article > span {
    grid-row: 1 / 3;
    align-self: center;
    display: grid;
    place-items: center;
    width: 36px;
    aspect-ratio: 1;
    border-radius: 11px;
    background: color-mix(in srgb,var(--brand) 10%,var(--surface));
    color: var(--brand);
    font-weight: 900;
}
.migration-stat-grid strong { font-size: 18px; line-height: 1.1; }
.migration-stat-grid small { color: var(--muted); }
.system-migration-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
    align-items: start;
}
.migration-card { padding: 0; overflow: hidden; }
.migration-card-head {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 15px;
    padding: 22px 24px;
    border-bottom: 1px solid var(--line);
    background: color-mix(in srgb,var(--surface-soft) 70%,var(--surface));
}
.migration-card-head h3 { margin: 4px 0 5px; }
.migration-card-head p { margin: 0; color: var(--muted); line-height: 1.5; }
.migration-card-icon {
    display: grid;
    place-items: center;
    width: 48px;
    aspect-ratio: 1;
    border-radius: 15px;
    background: linear-gradient(135deg,#0f172a,#2563eb);
    color: #fff;
    font-size: 24px;
    box-shadow: 0 10px 25px rgba(37,99,235,.18);
}
.migration-form { display: grid; gap: 13px; padding: 22px 24px 24px; }
.migration-option {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 11px;
    align-items: start;
    padding: 13px 14px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--surface-soft);
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.migration-option:hover { border-color: color-mix(in srgb,var(--brand) 42%,var(--line)); transform: translateY(-1px); }
.migration-option:has(input:checked) { border-color: color-mix(in srgb,var(--brand) 50%,var(--line)); background: color-mix(in srgb,var(--brand) 5%,var(--surface)); }
.migration-option input { margin-top: 3px; accent-color: var(--brand); }
.migration-option span { display: grid; gap: 3px; }
.migration-option small { color: var(--muted); line-height: 1.42; }
.migration-option-sensitive { border-color: rgba(245,158,11,.25); background: rgba(245,158,11,.055); }
.migration-safe-note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 11px;
    padding: 13px 14px;
    border-radius: 13px;
    background: rgba(16,185,129,.08);
    color: #065f46;
}
.migration-safe-note > span {
    display: grid;
    place-items: center;
    width: 28px;
    aspect-ratio: 1;
    border-radius: 9px;
    background: rgba(16,185,129,.12);
    font-weight: 900;
}
.migration-safe-note p { margin: 0; line-height: 1.45; }
.migration-upload-zone {
    display: grid;
    place-items: center;
    gap: 7px;
    padding: 24px 18px;
    border: 1.5px dashed color-mix(in srgb,var(--brand) 40%,var(--line));
    border-radius: 16px;
    background: color-mix(in srgb,var(--brand) 3%,var(--surface-soft));
    text-align: center;
}
.migration-upload-zone small { max-width: 510px; color: var(--muted); line-height: 1.45; }
.migration-upload-zone input { width: min(100%,360px); margin-top: 9px; }
.migration-upload-mark {
    display: grid;
    place-items: center;
    width: 58px;
    aspect-ratio: 1;
    border-radius: 18px;
    background: linear-gradient(135deg,#0f172a,#2563eb);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .06em;
}
.migration-steps { display: grid; gap: 9px; margin: 2px 0; padding: 0; list-style: none; }
.migration-steps li { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; }
.migration-steps li > span {
    display: grid;
    place-items: center;
    width: 29px;
    aspect-ratio: 1;
    border-radius: 9px;
    background: color-mix(in srgb,var(--brand) 9%,var(--surface));
    color: var(--brand);
    font-size: 12px;
    font-weight: 900;
}
.migration-steps li > div { display: grid; gap: 2px; }
.migration-steps small { color: var(--muted); line-height: 1.4; }
.migration-review-panel {
    scroll-margin-top: 90px;
    padding: 22px 24px;
    border: 1px solid rgba(16,185,129,.28);
    border-radius: 20px;
    background: linear-gradient(135deg,rgba(16,185,129,.075),var(--surface) 42%);
    box-shadow: 0 15px 38px rgba(15,23,42,.08);
}
.migration-review-panel.has-errors { border-color: rgba(239,68,68,.28); background: linear-gradient(135deg,rgba(239,68,68,.07),var(--surface) 42%); }
.migration-review-head { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; }
.migration-review-head h3 { margin: 3px 0 4px; font-size: 22px; }
.migration-review-head p { margin: 0; color: var(--muted); }
.migration-review-status {
    display: grid;
    place-items: center;
    width: 52px;
    aspect-ratio: 1;
    border-radius: 16px;
    background: rgba(16,185,129,.13);
    color: #047857;
    font-size: 25px;
    font-weight: 900;
}
.has-errors .migration-review-status { background: rgba(239,68,68,.12); color: #b91c1c; }
.migration-review-size { padding: 7px 10px; border-radius: 999px; background: var(--surface-soft); color: var(--muted); font-size: 12px; font-weight: 800; }
.migration-review-facts { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; margin-top: 18px; }
.migration-review-facts article { display: grid; gap: 3px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.migration-review-facts span,.migration-review-facts small { color: var(--muted); font-size: 12px; }
.migration-review-facts strong { font-size: 17px; }
.migration-message-list { display: grid; gap: 7px; margin-top: 14px; }
.migration-message-list p { display: grid; grid-template-columns: auto 1fr; gap: 9px; margin: 0; padding: 10px 12px; border-radius: 11px; line-height: 1.45; }
.migration-message-list p > span { display: grid; place-items: center; width: 24px; aspect-ratio: 1; border-radius: 8px; font-weight: 900; }
.migration-message-list.is-error p { background: rgba(239,68,68,.085); color: #991b1b; }
.migration-message-list.is-error p > span { background: rgba(239,68,68,.12); }
.migration-message-list.is-warning p { background: rgba(245,158,11,.09); color: #92400e; }
.migration-message-list.is-warning p > span { background: rgba(245,158,11,.13); }
.migration-review-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 17px; }
.migration-execute-button { background: linear-gradient(135deg,#047857,#10b981); border-color: transparent; }
.migration-final-warning { margin: 14px 0 0; padding-top: 14px; border-top: 1px solid var(--line); color: var(--muted); line-height: 1.5; }

@media (max-width: 1260px) {
    .migration-stat-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .migration-review-facts { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
    .system-migration-head { align-items: stretch; flex-direction: column; }
    .system-migration-version { min-width: 0; }
    .system-migration-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
    .system-migration-head { padding: 22px; }
    .migration-stat-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .migration-review-head { grid-template-columns: auto 1fr; }
    .migration-review-size { grid-column: 1 / -1; justify-self: start; }
    .migration-review-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .migration-card-head,.migration-form,.migration-review-panel { padding-left: 18px; padding-right: 18px; }
}
@media (max-width: 480px) {
    .migration-stat-grid,.migration-review-facts { grid-template-columns: 1fr; }
}
.migration-option-fixed { cursor: default; }
.migration-option-fixed:hover { transform: none; }
.migration-fixed-check {
    display: grid;
    place-items: center;
    width: 24px;
    aspect-ratio: 1;
    margin-top: 1px;
    border-radius: 8px;
    background: rgba(16,185,129,.12);
    color: #047857;
    font-weight: 900;
}


/* 1.0.38.1 · Systemdiagnose UI-Fix */
.system-diagnostic-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 2px 0 20px;
}
.system-diagnostic-card {
    min-width: 0;
    min-height: 108px;
    padding: 18px 20px;
    display: grid;
    grid-template-columns: minmax(120px, .72fr) minmax(0, 1.28fr);
    grid-template-areas:
        "label value"
        "label detail";
    column-gap: 22px;
    row-gap: 5px;
    align-content: center;
    align-items: center;
    border: 1px solid var(--line, #dbe4ef);
    border-radius: 15px;
    background: linear-gradient(145deg, #fbfdff, #f7fafc);
}
.system-diagnostic-card > span {
    grid-area: label;
    align-self: center;
    color: var(--muted, #667085);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .055em;
}
.system-diagnostic-card > strong {
    grid-area: value;
    min-width: 0;
    margin: 0;
    color: var(--text, #172033);
    font-size: 1.08rem;
    line-height: 1.32;
    overflow-wrap: anywhere;
}
.system-diagnostic-card > small {
    grid-area: detail;
    min-width: 0;
    margin: 0;
    color: var(--muted, #667085);
    line-height: 1.45;
    overflow-wrap: anywhere;
}
@media (max-width: 900px) {
    .system-diagnostic-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
    .system-diagnostic-card {
        min-height: 0;
        grid-template-columns: 1fr;
        grid-template-areas: "label" "value" "detail";
        gap: 6px;
        padding: 16px;
    }
}

/* 1.0.39 · Update-Staging & Vorabprüfung */
.update-staging-panel .section-heading p { margin:6px 0 0; color:var(--muted); max-width:760px; }
.update-stage-meta { margin-top:6px; }
.update-preflight-banner { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:16px; align-items:center; padding:18px; margin:18px 0 14px; border:1px solid var(--line); border-radius:18px; background:var(--surface-soft); }
.update-preflight-banner.is-ready { border-color:#b9dccd; background:#f1faf6; }
.update-preflight-banner.has-warnings { border-color:#ead6a1; background:#fffaf0; }
.update-preflight-banner.is-blocked { border-color:#e4b9bf; background:#fff5f6; }
.update-preflight-shield { width:48px; height:48px; border-radius:16px; display:grid; place-items:center; font-size:1.45rem; font-weight:950; background:#e8eef4; color:var(--brand-deep); }
.update-preflight-banner.is-ready .update-preflight-shield { background:#dff2e9; color:#126744; }
.update-preflight-banner.has-warnings .update-preflight-shield { background:#f7e8bd; color:#815c00; }
.update-preflight-banner.is-blocked .update-preflight-shield { background:#f4dfe2; color:#9e2436; }
.update-preflight-banner strong { display:block; margin-top:2px; font-size:1.05rem; }
.update-preflight-banner p { margin:5px 0 0; color:var(--muted); line-height:1.5; }
.update-preflight-time { color:var(--muted); font-size:.8rem; white-space:nowrap; align-self:start; }
.update-preflight-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:14px 0 18px; }
.update-preflight-summary article { display:grid; gap:4px; padding:14px 16px; border:1px solid var(--line); border-radius:15px; background:var(--surface); }
.update-preflight-summary span { color:var(--muted); font-size:.78rem; }
.update-preflight-summary strong { font-size:1.35rem; }
.update-preflight-summary .is-pass { border-color:#cbe5d9; }
.update-preflight-summary .is-warn { border-color:#ead9ab; }
.update-preflight-summary .is-block { border-color:#e7c1c6; }
.update-preflight-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:16px 0; }
.update-preflight-check { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; min-width:0; padding:15px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.update-preflight-check.is-pass { border-color:#d2e6dc; }
.update-preflight-check.is-warn { border-color:#ebdcb4; background:#fffdf7; }
.update-preflight-check.is-block { border-color:#e9c8cc; background:#fff8f8; }
.update-preflight-check-icon { width:34px; height:34px; border-radius:11px; display:grid; place-items:center; font-weight:950; background:#e8eef4; color:var(--brand-deep); }
.update-preflight-check.is-pass .update-preflight-check-icon { background:#e0f2e9; color:#126744; }
.update-preflight-check.is-warn .update-preflight-check-icon { background:#f7e9c5; color:#805d08; }
.update-preflight-check.is-block .update-preflight-check-icon { background:#f4e0e3; color:#9a2a39; }
.update-preflight-check-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.update-preflight-check-head span { flex:0 0 auto; color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.update-preflight-check p { margin:5px 0 0; color:var(--muted); font-size:.84rem; line-height:1.52; }
.update-preflight-check details { margin-top:9px; }
.update-preflight-check summary { cursor:pointer; color:var(--brand); font-size:.78rem; font-weight:750; }
.update-file-list { display:block; margin-top:8px; max-height:210px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; padding:10px 12px; border-radius:11px; background:#0f1b2a; color:#e8f0f7; font-size:.75rem; line-height:1.55; }
.update-change-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:18px 0; }
.update-change-grid article { display:grid; gap:4px; padding:14px 16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.update-change-grid article.has-conflict { border-color:#ead6a1; background:#fffaf0; }
.update-change-grid span, .update-change-grid small { color:var(--muted); }
.update-change-grid span { font-size:.78rem; }
.update-change-grid strong { font-size:1.25rem; }
.update-change-grid small { font-size:.75rem; }
.update-conflict-box { margin:16px 0; padding:16px; border:1px solid #ead6a1; border-radius:15px; background:#fffaf0; }
.update-conflict-box p { margin:6px 0 10px; color:var(--muted); line-height:1.5; }
.update-migration-box { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 18px; align-items:center; margin:16px 0; padding:14px 16px; border:1px solid var(--line); border-radius:15px; background:var(--surface-soft); }
.update-migration-box.has-warning { border-color:#ead6a1; background:#fffaf0; }
.update-migration-box > div { display:grid; gap:3px; }
.update-migration-box > span, .update-migration-box small { color:var(--muted); font-size:.8rem; }
.update-migration-box small { grid-column:1 / -1; }
.update-stage-fingerprint { display:grid; gap:5px; margin:14px 0; }
.update-stage-fingerprint span { color:var(--muted); font-size:.78rem; }
.update-stage-fingerprint code { display:block; max-width:100%; overflow-wrap:anywhere; padding:10px 12px; border:1px solid var(--line); border-radius:11px; background:var(--surface-soft); font-size:.75rem; }
.update-staging-actions { align-items:flex-end; gap:10px; }
.update-apply-form { display:grid; gap:9px; }
.update-warning-confirm { display:flex !important; align-items:flex-start; gap:9px; max-width:620px; padding:10px 12px; border:1px solid #ead6a1; border-radius:12px; background:#fffaf0; font-size:.8rem; color:var(--text); }
.update-warning-confirm input { margin-top:2px; flex:0 0 auto; }
.update-staging-actions .danger-button { min-height:42px; }

@media (max-width: 980px) {
    .update-preflight-summary, .update-change-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .update-preflight-grid { grid-template-columns:1fr; }
    .update-preflight-banner { grid-template-columns:auto minmax(0,1fr); }
    .update-preflight-time { grid-column:2; }
}
@media (max-width: 640px) {
    .update-preflight-summary, .update-change-grid { grid-template-columns:1fr; }
    .update-preflight-banner { grid-template-columns:1fr; align-items:start; }
    .update-preflight-time { grid-column:1; }
    .update-preflight-check { grid-template-columns:1fr; }
    .update-preflight-check-head { align-items:flex-start; flex-direction:column; gap:4px; }
    .update-migration-box { grid-template-columns:1fr; }
    .update-migration-box small { grid-column:1; }
    .update-staging-actions { align-items:stretch; flex-direction:column; }
    .update-staging-actions form, .update-staging-actions button { width:100%; }
}
