/*
 * Panel parafii — wygląd panelu (dobrastronaparafii.pl).
 *
 * Warstwa nad motywem Konkat (AdminThemeUikit): zmienne --pw-* dostają barwy panelu,
 * a powłoka (.pp-*) to pasek boczny, górny pasek, pulpit, lista wpisów i logowanie.
 * Jeden, świadomie jasny motyw. Barwy marki parafii: --pp-brand i --pp-accent
 * (tylko tu — logo i nazwa pochodzą z Ustawień serwisu).
 */

@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 100 1000; font-display: swap;
	src: url("fonts/dm-sans-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 100 1000; font-display: swap;
	src: url("fonts/dm-sans-latin-ext-wght-normal.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap;
	src: url("fonts/manrope-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap;
	src: url("fonts/manrope-latin-ext-wght-normal.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

:root {
	color-scheme: light;
	--pp-canvas: #f5f3ef;
	--pp-surface: #ffffff;
	--pp-surface-2: #faf8f5;
	--pp-ink: #241d18;
	--pp-ink-2: #5b5047;
	--pp-muted: #7d7166;
	--pp-line: #e8e2d9;
	--pp-line-strong: #d7cec2;
	--pp-brand: #513e32;
	--pp-accent: #7f6338;
	--pp-accent-ink: #6a5230;
	--pp-accent-soft: #f4ede2;
	--pp-accent-ring: rgba(127, 99, 56, .28);
	--pp-ok: #2e7a4d;
	--pp-ok-soft: #e6f2ea;
	--pp-warn: #9a5b00;
	--pp-warn-soft: #fbf0dc;
	--pp-danger: #b3261e;
	--pp-danger-soft: #fbe9e7;
	--pp-font-ui: "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	--pp-font-display: "Manrope", "DM Sans", ui-sans-serif, system-ui, sans-serif;
	--pp-r-sm: 8px;
	--pp-r-md: 12px;
	--pp-r-lg: 16px;
	--pp-shadow: 0 1px 2px rgba(36, 29, 24, .05), 0 2px 8px rgba(36, 29, 24, .04);
	--pp-shadow-pop: 0 10px 30px rgba(36, 29, 24, .12), 0 2px 6px rgba(36, 29, 24, .06);
	--pp-sidebar: 256px;

	/* Konkat → barwy panelu */
	--pw-main-color: var(--pp-accent);
	--pw-text-color: var(--pp-ink);
	--pw-muted-color: var(--pp-muted);
	--pw-border-color: var(--pp-line);
	--pw-main-background: var(--pp-canvas);
	--pw-inputs-background: var(--pp-surface);
	--pw-blocks-background: var(--pp-surface);
	--pw-text-background: var(--pp-surface);
	--pw-button-background: var(--pp-accent);
	--pw-button-color: #fff;
	--pw-button-border: var(--pp-accent);
	--pw-button-hover-background: var(--pp-accent-ink);
	--pw-button-hover-color: #fff;
	--pw-button-hover-border: var(--pp-accent-ink);
	--pw-button-muted-background: var(--pp-surface);
	--pw-button-muted-color: var(--pp-ink);
	--pw-button-muted-border: var(--pp-line-strong);
	--pw-menu-item-background-hover: var(--pp-surface-2);
	--pw-masthead-background: var(--pp-surface);
	--pw-masthead-active-color: var(--pp-ink);
	--pw-masthead-text-color: var(--pp-ink-2);
	--pw-masthead-border-color: var(--pp-line);
	--pw-masthead-logo-color: var(--pp-accent);
	--pw-masthead-input-background: var(--pp-surface);
	--pw-masthead-input-color: var(--pp-ink);
	--pw-masthead-input-border: var(--pp-line);
	--pw-masthead-menu-item-background-hover: var(--pp-surface-2);
	--pw-alert-primary: var(--pp-accent-soft);
	--pw-alert-success: var(--pp-ok-soft);
	--pw-alert-warning: var(--pp-warn-soft);
	--pw-alert-danger: var(--pp-danger-soft);
	--pw-alert-text-color: var(--pp-ink);
	--pw-notes-background: var(--pp-warn-soft);
	--pw-code-color: var(--pp-accent-ink);
	--pw-code-background: var(--pp-surface-2);
	--pw-error-inline-text-color: var(--pp-danger);
	--pw-button-radius: 10px;
	--pw-input-radius: 10px;
}

/* ================================================================ podstawy */

html.pw, html.pw body { background: var(--pp-canvas); }
html.pw body {
	font-family: var(--pp-font-ui);
	font-size: 15px;
	line-height: 1.55;
	color: var(--pp-ink);
	-webkit-font-smoothing: antialiased;
}
html.pw body :is(input, select, textarea, button, .uk-button, .ui-button, .uk-input, .uk-select, .uk-textarea) { font-family: inherit; }
html.pw :is(h1, h2, h3, .uk-h1, .uk-h2, .uk-h3) { font-family: var(--pp-font-display); color: var(--pp-ink); letter-spacing: -.01em; text-wrap: balance; }
html.pw a { color: var(--pp-accent-ink); }
svg.i { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; vertical-align: middle; }
html.pw :focus-visible { outline: 2px solid var(--pp-accent); outline-offset: 2px; }
[hidden] { display: none !important; }
.pp-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

/* ================================================================ układ */

.pp-app { display: grid; grid-template-columns: var(--pp-sidebar) minmax(0, 1fr); min-height: 100vh; }

.pp-sidebar {
	position: sticky; top: 0; height: 100vh; z-index: 40;
	display: flex; flex-direction: column; gap: 4px;
	padding: 18px 14px; background: var(--pp-surface); border-right: 1px solid var(--pp-line); overflow-y: auto; overflow-x: hidden;
}
.pp-sidebar > * { min-width: 0; flex-shrink: 0; }
.pp-sidebar p, .pp-site > span { min-width: 0; overflow-wrap: anywhere; }
.pp-site { display: flex; align-items: center; gap: 12px; padding: 4px 8px 18px; text-decoration: none !important; color: inherit !important; }
.pp-site b { display: block; font: 700 .9375rem/1.25 var(--pp-font-display); color: var(--pp-ink); }
.pp-site small { display: block; color: var(--pp-muted); font-size: .8125rem; }

/* logo zawsze w białym kafelku i w całości (różne parafie, różne kształty logotypów) */
.pp-logo {
	width: 44px; height: 44px; flex: none; display: grid; place-items: center; padding: 4px;
	background: #fff; border: 1px solid var(--pp-line); border-radius: 10px; overflow: hidden;
}
.pp-logo img { max-width: 100%; max-height: 100%; object-fit: contain; display: block; }
.pp-logo > span { font: 800 1.125rem var(--pp-font-display); color: var(--pp-brand); }
.pp-logo.lg { width: 60px; height: 60px; padding: 6px; border-color: transparent; border-radius: 12px; box-shadow: 0 2px 10px rgba(0, 0, 0, .18); }

.pp-nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; min-width: 0; }
.pp-nav a {
	display: flex; align-items: center; gap: 11px; min-width: 0; min-height: 40px; padding: 0 10px; border-radius: var(--pp-r-sm);
	color: var(--pp-ink-2); text-decoration: none !important; font-weight: 500;
}
.pp-nav a:hover { background: var(--pp-surface-2); color: var(--pp-ink); }
.pp-nav a[aria-current="page"] { background: var(--pp-accent-soft); color: var(--pp-accent-ink); font-weight: 600; }
.pp-nav a > span:not(.count) { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-nav a .count { flex: none; margin-left: auto; color: var(--pp-muted); font-size: .75rem; font-variant-numeric: tabular-nums; }
.pp-nav.admin a:not([aria-current]) { color: var(--pp-muted); }
.pp-nav a.sub { min-height: 32px; padding-left: 14px; gap: 6px; font-size: .8125rem; font-weight: 400; }
.pp-nav a.sub > svg.i { display: none; }
.pp-group { min-width: 0; }
.pp-group > summary {
	display: flex; align-items: center; gap: 11px; min-height: 40px; padding: 0 10px; border-radius: var(--pp-r-sm);
	color: var(--pp-ink-2); font-weight: 500; cursor: pointer; list-style: none; user-select: none;
}
.pp-group > summary::-webkit-details-marker { display: none; }
.pp-group > summary:hover { background: var(--pp-surface-2); color: var(--pp-ink); }
.pp-group[data-on] > summary { color: var(--pp-ink); font-weight: 600; }
.pp-group > summary > span:not(.chev) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-group .chev { flex: none; margin-left: auto; display: grid; place-items: center; color: var(--pp-muted); transition: transform .15s; }
.pp-group .chev svg.i { width: 15px; height: 15px; }
.pp-group[open] > summary .chev { transform: rotate(90deg); }
.pp-group-items { display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; gap: 2px; margin: 2px 0 6px 20px; padding: 0; border-left: 1px solid var(--pp-line); }
@media (prefers-reduced-motion: reduce) { .pp-group .chev { transition: none; } }
.pp-nav-label {
	margin: 14px 10px 6px; color: var(--pp-muted); font-size: .75rem; font-weight: 600;
	letter-spacing: .06em; text-transform: uppercase; display: flex; align-items: center; gap: 6px;
}
.pp-nav-label svg.i { width: 13px; height: 13px; }
.pp-help-mini { margin-top: auto; padding: 14px; border-radius: var(--pp-r-md); background: var(--pp-surface-2); border: 1px solid var(--pp-line); }
.pp-help-mini b { display: block; font-size: .875rem; margin-bottom: 2px; }
.pp-help-mini p { color: var(--pp-muted); font-size: .8125rem; margin: 0 0 10px; line-height: 1.45; }
.pp-help-mini a { font-size: .875rem; font-weight: 600; text-decoration: none; display: inline-flex; gap: 6px; align-items: center; }
.pp-help-mini svg.i { width: 15px; height: 15px; }
.pp-sidebar > * + .pp-help-mini { margin-top: auto; }
.pp-sidebar .pp-help-mini { margin-top: auto; }

.pp-main { min-width: 0; display: flex; flex-direction: column; }
#pw-mastheads { position: sticky; top: 0; z-index: 30; }
.pp-topbar {
	display: flex; align-items: center; gap: 12px; padding: 12px 32px;
	background: rgba(245, 243, 239, .88); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.pp-topbar .pp-burger { display: none; }
.pp-top-actions { margin-left: auto; display: flex; align-items: center; gap: 8px; }

/* wyszukiwarka (live search ProcessWire) */
.pp-topbar .pw-search-form { flex: 1; max-width: 460px; margin: 0; }
.pp-topbar .pw-search-form .uk-inline { display: flex; align-items: center; width: 100%; }
.pp-topbar .pw-search-form .uk-form-icon { position: absolute; left: 0; width: 40px; color: var(--pp-muted); }
.pp-topbar .pw-search-form .uk-form-icon .fa { font-size: 15px; }
html.pw .pp-topbar .pw-search-input {
	width: 100% !important; height: 40px; padding: 0 56px 0 40px !important; border: 1px solid var(--pp-line); border-radius: 10px;
	background: var(--pp-surface); color: var(--pp-ink); font-size: .9375rem; box-shadow: none;
}
html.pw .pp-topbar .pw-search-input::placeholder { color: var(--pp-muted); opacity: 1; }
html.pw .pp-topbar .pw-search-input:focus { border-color: var(--pp-accent); box-shadow: 0 0 0 4px var(--pp-accent-ring); outline: 0; }
.pp-topbar .pw-search-form kbd {
	position: absolute; right: 10px; font: 500 .75rem var(--pp-font-ui); padding: 2px 6px; color: var(--pp-muted);
	border: 1px solid var(--pp-line); border-radius: 6px; background: var(--pp-surface-2); pointer-events: none;
}
.pp-topbar .pw-search-form:focus-within kbd { display: none; }
.pp-topbar .pw-search-form[data-shortcut]::after { display: none !important; }

.pp-avatar {
	width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; cursor: pointer;
	background: var(--pp-brand); color: #fff; font: 700 .8125rem var(--pp-font-display); border: 0;
}
.pp-account-menu.uk-dropdown {
	min-width: 230px; padding: 6px; border-radius: var(--pp-r-md); background: var(--pp-surface);
	border: 1px solid var(--pp-line); box-shadow: var(--pp-shadow-pop);
}
.pp-account-menu .who { padding: 8px 10px 10px; border-bottom: 1px solid var(--pp-line); margin-bottom: 6px; }
.pp-account-menu .who b { display: block; }
.pp-account-menu .who small { color: var(--pp-muted); font-size: .8125rem; }
.pp-account-menu a { display: flex; align-items: center; gap: 10px; min-height: 38px; padding: 0 10px; border-radius: 8px; color: var(--pp-ink-2); text-decoration: none; font-weight: 500; }
.pp-account-menu a:hover { background: var(--pp-surface-2); color: var(--pp-ink); }

.pp-scrim { display: none; }

/* treść */
.pp-shell #main.pw-container {
	max-width: 1240px !important; width: 100%; margin: 0 !important; padding: 8px 32px 48px !important;
}
.pp-shell #pw-content-body { margin: 0; }
.pp-shell .pw-notices { margin: 0 32px; max-width: 1176px; }

/* ================================================================ elementy */

.pp-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 40px; padding: 0 16px;
	border-radius: 10px; border: 1px solid var(--pp-line-strong); background: var(--pp-surface); color: var(--pp-ink) !important;
	font: 600 .9375rem var(--pp-font-ui); text-decoration: none !important; cursor: pointer; white-space: nowrap;
	transition: background .15s, border-color .15s, box-shadow .15s;
}
.pp-btn:hover { border-color: var(--pp-muted); }
.pp-btn.primary { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff !important; box-shadow: 0 1px 0 rgba(255, 255, 255, .15) inset, 0 1px 2px rgba(36, 29, 24, .15); }
.pp-btn.primary:hover { background: var(--pp-accent-ink); }
.pp-btn.ghost { border-color: transparent; background: none; color: var(--pp-ink-2) !important; }
.pp-btn.ghost:hover { background: var(--pp-surface); border-color: var(--pp-line); }
.pp-btn.sm { height: 34px; padding: 0 12px; font-size: .875rem; border-radius: 8px; }
.pp-btn.icon { width: 40px; padding: 0; }
.pp-btn.sm.icon { width: 34px; }
.pp-btn.ghost.pp-preview-unavailable { color: var(--pp-muted) !important; cursor: default; background: none; border-color: transparent; }
.pp-btn.copied { color: var(--pp-ok) !important; }
.pp-pill { display: inline-flex; align-items: center; gap: 6px; height: 24px; padding: 0 10px; border-radius: 99px; font-size: .8125rem; font-weight: 600; white-space: nowrap; }
.pp-pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.pp-pill.ok { background: var(--pp-ok-soft); color: var(--pp-ok); }
.pp-pill.draft { background: var(--pp-warn-soft); color: var(--pp-warn); }
.pp-chip { display: inline-flex; align-items: center; height: 24px; padding: 0 9px; border-radius: 6px; background: var(--pp-surface-2); border: 1px solid var(--pp-line); color: var(--pp-ink-2); font-size: .8125rem; white-space: nowrap; }
.pp-card { background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: var(--pp-r-lg); box-shadow: var(--pp-shadow); }
.pp-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px 12px; }
.pp-card-head h2 { font-size: 1.0625rem; line-height: 1.3; font-weight: 700; margin: 0; }
.pp-card-head a { font-size: .875rem; font-weight: 600; text-decoration: none; }
.pp-empty { padding: 20px; color: var(--pp-muted); margin: 0; }
.pp-toast {
	position: fixed; left: 50%; bottom: 32px; transform: translateX(-50%); z-index: 1100; padding: 10px 16px; border-radius: 10px;
	background: var(--pp-ink); color: #fff; font-size: .875rem; font-weight: 600; box-shadow: var(--pp-shadow-pop);
}

/* ================================================================ nagłówek strony */

.pp-view { display: flex; flex-direction: column; gap: 24px; }
.pp-page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-top: 12px; }
.pp-page-head h1, html.pw #pw-content-title { font: 800 1.75rem/1.2 var(--pp-font-display); margin: 0; color: var(--pp-ink); }
.pp-page-head p { color: var(--pp-muted); margin: 6px 0 0; }
.pp-head-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.pp-muted { color: var(--pp-muted); }
.pp-total { color: var(--pp-muted); font-size: .875rem; }
.pp-select select { height: 36px; max-width: 100%; padding: 0 32px 0 12px; border: 1px solid var(--pp-line); border-radius: 10px; background: var(--pp-surface); color: var(--pp-ink); font: 500 .875rem var(--pp-font-ui); }
.pp-select select:focus { border-color: var(--pp-accent); box-shadow: 0 0 0 4px var(--pp-accent-ring); outline: 0; }
.pp-table td.col-cat .pp-chip { text-decoration: none; margin: 2px 0; }
.pp-table .col-num { text-align: right; font-variant-numeric: tabular-nums; }
html.pw #pw-content-head.pp-page-head { margin-bottom: 20px; }
.pp-head-hidden { display: none; }
.pp-page-head-text { min-width: 0; }
html.pw #pw-content-head .uk-breadcrumb { margin: 0 0 8px; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; padding: 0; }
html.pw #pw-content-head .uk-breadcrumb > li { font-size: .875rem; color: var(--pp-muted); padding: 0; }
html.pw #pw-content-head .uk-breadcrumb > li > a { color: var(--pp-muted); text-decoration: none; }
html.pw #pw-content-head .uk-breadcrumb > li > a:hover { color: var(--pp-ink); }
html.pw #pw-content-head .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before { content: "›"; margin: 0 6px 0 0; color: var(--pp-line-strong); }
#pw-content-head-buttons { display: flex; gap: 8px; align-items: center; margin-left: auto; }
#pw-content-head-buttons:empty { display: none; }

/* ================================================================ pulpit */

.pp-quick { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.pp-tile { display: flex; flex-direction: column; gap: 12px; padding: 18px; text-decoration: none !important; color: inherit !important; transition: transform .15s, box-shadow .15s, border-color .15s; }
.pp-tile:hover { transform: translateY(-2px); box-shadow: var(--pp-shadow-pop); border-color: var(--pp-line-strong); }
.pp-tile .ic { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: var(--pp-accent-soft); color: var(--pp-accent-ink); }
.pp-tile .ic svg.i { width: 21px; height: 21px; }
.pp-tile b { font: 700 1rem/1.3 var(--pp-font-display); color: var(--pp-ink); }
.pp-tile > span:last-child { color: var(--pp-muted); font-size: .875rem; line-height: 1.45; }
.pp-dash { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 20px; align-items: start; }
.pp-stack { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.pp-rows { list-style: none; margin: 0; padding: 0 8px 8px; }
.pp-rows li { margin: 0; }
.pp-rows li a { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 10px; text-decoration: none; color: inherit; }
.pp-rows li a:hover { background: var(--pp-surface-2); }
.pp-rows .doc { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--pp-surface-2); border: 1px solid var(--pp-line); color: var(--pp-ink-2); }
.pp-rows .txt { min-width: 0; }
.pp-rows .t { display: block; font-weight: 600; color: var(--pp-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pp-rows .m { display: block; color: var(--pp-muted); font-size: .8125rem; }
.pp-facts { padding: 0 20px 18px; display: grid; gap: 14px; }
.pp-facts .fact { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; }
.pp-facts .fact svg.i { color: var(--pp-accent); margin-top: 2px; }
.pp-facts small { display: block; color: var(--pp-muted); font-size: .8125rem; }
.pp-facts b { font-weight: 600; font-variant-numeric: tabular-nums; }
.pp-help { padding: 20px; display: grid; gap: 12px; background: linear-gradient(160deg, #fff 0%, var(--pp-accent-soft) 100%); }
.pp-help .who { display: flex; align-items: center; gap: 10px; color: var(--pp-muted); font-size: .8125rem; }
.pp-help .who b { color: var(--pp-ink); font-size: .9375rem; display: block; }
.pp-help .mark { width: 38px; height: 38px; border-radius: 10px; background: var(--pp-brand); color: #fff; display: grid; place-items: center; }
.pp-help p { color: var(--pp-ink-2); margin: 0; }
.pp-help .mail { display: flex; align-items: center; gap: 8px; padding: 6px 6px 6px 12px; background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: 10px; font-size: .875rem; color: var(--pp-muted); }
.pp-help .mail a { flex: 1; min-width: 0; overflow-wrap: anywhere; color: var(--pp-ink); text-decoration: none; }
.pp-help .actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* ================================================================ lista wpisów */

.pp-toolbar { display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; padding: 14px 16px; border-bottom: 1px solid var(--pp-line); }
.pp-seg { display: inline-flex; padding: 3px; gap: 2px; background: var(--pp-surface-2); border: 1px solid var(--pp-line); border-radius: 10px; overflow-x: auto; max-width: 100%; }
.pp-seg a { display: inline-flex; align-items: center; height: 32px; padding: 0 12px; border-radius: 7px; font-weight: 600; font-size: .875rem; color: var(--pp-ink-2); text-decoration: none; white-space: nowrap; }
.pp-seg a:hover { color: var(--pp-ink); }
.pp-seg a[aria-current] { background: var(--pp-surface); color: var(--pp-ink); box-shadow: var(--pp-shadow); }
.pp-seg a span { color: var(--pp-muted); font-weight: 500; margin-left: 6px; font-variant-numeric: tabular-nums; }
.pp-filter { position: relative; display: flex; align-items: center; min-width: 0; flex: 0 1 260px; margin: 0; }
.pp-filter svg.i { position: absolute; left: 10px; color: var(--pp-muted); pointer-events: none; }
html.pw .pp-filter input[type=search] { width: 100%; height: 36px; padding: 0 10px 0 36px; border: 1px solid var(--pp-line); border-radius: 10px; font-size: .875rem; background: var(--pp-surface); color: var(--pp-ink); }
html.pw .pp-filter input[type=search]:focus { border-color: var(--pp-accent); box-shadow: 0 0 0 4px var(--pp-accent-ring); outline: 0; }
.pp-table-wrap { overflow-x: auto; }
html.pw table.pp-table { width: 100%; border-collapse: collapse; margin: 0; }
.pp-table th { text-align: left; font-size: .75rem; letter-spacing: .05em; text-transform: uppercase; color: var(--pp-muted); font-weight: 600; padding: 10px 16px; background: var(--pp-surface-2); border-bottom: 1px solid var(--pp-line); white-space: nowrap; }
.pp-table td { padding: 12px 16px; border-bottom: 1px solid var(--pp-line); vertical-align: middle; }
.pp-table tr:last-child td { border-bottom: 0; }
.pp-table tbody tr:hover { background: var(--pp-surface-2); }
.pp-table td.title a { color: var(--pp-ink); font-weight: 600; text-decoration: none; }
.pp-table td.title a:hover { color: var(--pp-accent-ink); text-decoration: underline; }
.pp-table td.title small { display: block; color: var(--pp-muted); font-size: .8125rem; }
.pp-table td.date { color: var(--pp-ink-2); white-space: nowrap; font-variant-numeric: tabular-nums; }
.pp-table td.acts { text-align: right; white-space: nowrap; }
.pp-table td.acts .pp-btn { margin-left: 4px; }
.pp-pager { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; border-top: 1px solid var(--pp-line); color: var(--pp-muted); font-size: .875rem; gap: 12px; flex-wrap: wrap; }
.pp-pages { display: flex; gap: 4px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.pp-pages li { margin: 0; }
.pp-pages a, .pp-pages li > span { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 34px; padding: 0 10px; border-radius: 8px; border: 1px solid var(--pp-line); color: var(--pp-ink-2); text-decoration: none; font-weight: 600; background: var(--pp-surface); }
.pp-pages a:hover { border-color: var(--pp-muted); color: var(--pp-ink); }
.pp-pages .on a { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }
.pp-pages .MarkupPagerNavSeparator { border: 0; background: none; }

/* ================================================================ formularze ProcessWire */

html.pw .pp-shell .Inputfields > .Inputfield,
html.pw .pp-shell .InputfieldForm > .Inputfields > .Inputfield { border-color: var(--pp-line); }
html.pw body :is(.uk-input, .uk-select, .uk-textarea, input[type=text], input[type=email], input[type=url], input[type=number], input[type=password], input[type=date], input[type=datetime-local], textarea, select):not(.pw-search-input):not([type=search]) {
	border-color: var(--pp-line-strong);
	border-radius: 10px;
	background: var(--pp-surface);
	color: var(--pp-ink);
	transition: border-color .15s, box-shadow .15s;
}
html.pw body :is(.uk-input, .uk-select, input[type=text], input[type=email], input[type=url], input[type=number], input[type=password], input[type=date], input[type=datetime-local], select):not(.pw-search-input):not([type=search]) { min-height: 42px; }
html.pw body :is(.uk-input, .uk-select, .uk-textarea, input, textarea, select):not(.pw-search-input):not([type=search]):focus {
	border-color: var(--pp-accent); box-shadow: 0 0 0 4px var(--pp-accent-ring); outline: 0;
}
html.pw #Inputfield_title { font: 700 1.25rem var(--pp-font-display); min-height: 50px; }

/* przyciski PW (zapis, dodaj) jak .pp-btn */
html.pw body :is(button.ui-button, .uk-button-primary, .uk-button-default, a.ui-button) {
	border-radius: 10px; font-weight: 600; font-family: var(--pp-font-ui); text-transform: none; letter-spacing: 0;
}
html.pw body button.ui-button.ui-priority-secondary,
html.pw body button.ui-button.ui-state-default.pw-button-secondary { background: var(--pp-surface); color: var(--pp-ink); border: 1px solid var(--pp-line-strong); }

/* zakładki edycji (Treść / Ustawienia / …) */
html.pw .pp-shell .WireTabs { border-bottom: 1px solid var(--pp-line); }
html.pw .pp-shell .WireTabs > li > a { font-weight: 600; text-transform: none; letter-spacing: 0; }

/* ================================================================ własny nagłówek (okruszki + opis) */

.pp-crumbs { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; color: var(--pp-muted); font-size: .875rem; margin-bottom: 8px; }
.pp-crumbs a { color: inherit; text-decoration: none; }
.pp-crumbs a:hover { color: var(--pp-ink); }
.pp-crumbs svg.i { width: 14px; height: 14px; color: var(--pp-line-strong); }
.pp-lead { color: var(--pp-muted); margin: 6px 0 0; }
html.pw #pw-content-head.pp-custom-head { align-items: flex-end; padding-top: 20px; margin-bottom: 24px; }

/* ================================================================ drzewo stron i menu (karty) */

body.pp-tree #pw-content-body > .PageList, body.pp-tree #PageListContainer {
	background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: var(--pp-r-lg); box-shadow: var(--pp-shadow); padding: 8px;
}
body.pp-tree .PageList { margin: 0; }
body.pp-tree .PageList .PageList { margin: 6px 0 0 38px; padding: 0; }
body.pp-tree .PageList > .PageListItem, body.pp-tree .PageList .PageListItem {
	position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px;
	min-height: 64px; padding: 8px 12px 8px 10px; margin: 0 0 6px; border: 1px solid var(--pp-line); border-radius: 12px;
	background: var(--pp-surface); transition: border-color .15s, background .15s;
}
body.pp-tree .PageList .PageList .PageListItem { background: var(--pp-surface-2); }
body.pp-tree .PageListItem:hover { border-color: var(--pp-line-strong); }
body.pp-tree .PageListItem > a.PageListPage { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 0; color: var(--pp-ink); text-decoration: none; background: none !important; }
body.pp-tree .PageListItem > a.PageListPage .label_title { display: flex; align-items: center; gap: 12px; min-width: 0; }
body.pp-tree .PageListItem > a.PageListPage::before { display: none; }
.pp-ti { flex: none; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--pp-muted); }
.pp-ti svg.i { width: 18px; height: 18px; }
.pp-tt { display: flex; flex-direction: column; min-width: 0; font-weight: 700; font-size: .9375rem; line-height: 1.35; color: var(--pp-ink); }
.pp-tt small { display: block; font-weight: 400; font-size: .8125rem; color: var(--pp-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.pp-tree .PageListItem.PageListStatusUnpublished .pp-tt { color: var(--pp-muted); }
body.pp-tree .PageListItem.PageListStatusUnpublished .pp-tt > :not(small) { text-decoration: none; }
/* rozwijanie gałęzi: strzałka PW przed ikoną */
body.pp-tree .PageListItem.secondary > a.PageListPage, body.pp-tree .PageListItem.secondary .pp-tt { color: var(--pp-ink); opacity: 1; }
body.pp-tree .PageListItem.PageListID7 > a.PageListPage { padding-left: 48px; font-weight: 600; color: var(--pp-ink-2); }
body.pp-tree .PageListItem.PageListID7 > a.PageListPage i.fa { display: none; }
/* Wszystkie akcje udostępnione przez PW pozostają dostępne, także na dotyku. */
html.pw body.pp-tree #pw-content-body .PageList .PageListItem .PageListActions.actions { display: flex !important; gap: 4px; flex-wrap: wrap; justify-content: flex-end; align-items: center; margin: 0; padding: 0; list-style: none; opacity: 1 !important; }
html.pw body.pp-tree #pw-content-body .PageListActions > li { margin: 0; padding: 0; }
html.pw body.pp-tree #pw-content-body .PageListActions > li::before, html.pw body.pp-tree #pw-content-body .PageListActions > li::after { display: none !important; content: none !important; }
html.pw body.pp-tree #pw-content-body .PageListActions > li:is(.PageListActionEdit, .PageListActionOpen) { display: block !important; order: 9; }
html.pw body.pp-tree #pw-content-body .PageListActions > li > a {
	display: inline-flex; letter-spacing: 0; line-height: 1; box-shadow: none; top: 0; filter: none; align-items: center; height: 34px; padding: 0 12px; border-radius: 8px; border: 1px solid transparent;
	font-size: .875rem; font-weight: 600; color: var(--pp-ink-2); text-decoration: none; background: none; text-transform: none;
}
html.pw body.pp-tree #pw-content-body .PageListActions > li > a:hover { background: var(--pp-surface-2); border-color: var(--pp-line); color: var(--pp-ink); }
html.pw body.pp-tree #pw-content-body .PageListActions > li:is(.PageListActionEdit, .PageListActionOpen) > a { border: 1px solid var(--pp-line-strong) !important; background: var(--pp-surface); color: var(--pp-ink); }
html.pw body.pp-tree #pw-content-body .PageListActions > li:is(.PageListActionEdit, .PageListActionOpen) > a:hover { border-color: var(--pp-muted); }
/* przenoszenie (przeciągnij i upuść) */
body.pp-tree .PageListSortItem, body.pp-tree .PageListPlaceholder { border: 1px dashed var(--pp-accent); border-radius: 12px; background: var(--pp-accent-soft); min-height: 56px; margin-bottom: 6px; }
body.pp-tree .PageListMoreItem, body.pp-tree .PageListerMore { border: 0; background: none; min-height: 0; }
/* Widoczność stron i akcji kontroluje ProcessWire, nie nakładka. */
/* menu: ikona-uchwyt jak w makiecie */
body.pp-tree-menu .PageListTemplate_menu-pozycja .pp-ti { cursor: grab; }
body.pp-tree .PageListRootHidden > .PageList { margin: 0 !important; }
body.pp-tree .PageListRootHidden > .PageList > .PageListItem { background: var(--pp-surface); }

/* ================================================================ edycja strony / wpisu */

.pp-edit { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }
.pp-edit.single { grid-template-columns: minmax(0, 1fr); }
.pp-edit-main { min-width: 0; background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: var(--pp-r-lg); box-shadow: var(--pp-shadow); }
.pp-edit-side { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 20px; min-width: 0; }
.pp-side-card { padding: 18px; display: grid; gap: 14px; }
.pp-side-card h2 { font: 700 1.0625rem/1.3 var(--pp-font-display); margin: 0; color: var(--pp-ink); }
.pp-switch { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: relative; cursor: pointer; }
.pp-switch b { display: block; font-size: .9375rem; color: var(--pp-ink); }
.pp-switch small { color: var(--pp-muted); font-size: .8125rem; }
.pp-switch .pp-toggle { position: absolute; right: 0; top: 50%; width: 44px; height: 26px; margin: -13px 0 0; opacity: 0; cursor: pointer; z-index: 1; }
.pp-toggle-ui { position: relative; flex: none; width: 44px; height: 26px; border-radius: 99px; background: var(--pp-line-strong); transition: background .15s; }
.pp-toggle-ui::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.2); transition: transform .15s; }
.pp-toggle:checked + .pp-toggle-ui { background: var(--pp-ok); }
.pp-toggle:checked + .pp-toggle-ui::after { transform: translateX(18px); }
.pp-toggle:focus-visible + .pp-toggle-ui { outline: 2px solid var(--pp-accent); outline-offset: 2px; }
.pp-meta { display: grid; gap: 8px; margin: 0; font-size: .875rem; color: var(--pp-muted); border-top: 1px solid var(--pp-line); padding-top: 14px; }
.pp-switch + .pp-meta { margin-top: 0; }
.pp-side-card h2 + .pp-meta { border-top: 0; padding-top: 0; }
.pp-meta div { display: flex; justify-content: space-between; gap: 12px; }
.pp-meta dt { font-weight: 400; }
.pp-meta dd { margin: 0; color: var(--pp-ink-2); font-weight: 500; text-align: right; min-width: 0; overflow-wrap: anywhere; }
.pp-cover { position: relative; aspect-ratio: 4 / 3; border-radius: 10px; overflow: hidden; background: var(--pp-surface-2); }
.pp-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pp-cover:not(.empty)::after { content: "Okładka"; position: absolute; left: 6px; bottom: 6px; padding: 2px 8px; border-radius: 6px; background: rgba(36,29,24,.78); color: #fff; font-size: .75rem; font-weight: 600; }
.pp-cover.empty { display: grid; place-content: center; justify-items: center; gap: 6px; color: var(--pp-muted); font-size: .875rem; border: 1px dashed var(--pp-line-strong); }
.pp-cover.empty svg.i { width: 24px; height: 24px; }
.pp-hint { color: var(--pp-muted); font-size: .8125rem; margin: 0; line-height: 1.55; }

/* zakładki wewnątrz karty */
html.pw .pp-edit-main #PageEditTabs, html.pw body.pp-edit-page #PageEditTabs {
	display: flex; flex-wrap: nowrap; scrollbar-width: none; gap: 4px; margin: 0; padding: 0 12px; border-bottom: 1px solid var(--pp-line); overflow-x: auto; background: none;
}
html.pw body.pp-edit-page #PageEditTabs::before, html.pw body.pp-edit-page #PageEditTabs::after { display: none; }
html.pw body.pp-edit-page #PageEditTabs > li { margin: 0; padding: 0; }
html.pw body.pp-edit-page #PageEditTabs > li > a {
	position: relative; display: inline-flex; align-items: center; gap: 7px; height: 50px; padding: 0 12px; border: 0 !important; background: none !important;
	font: 600 .9375rem var(--pp-font-ui); color: var(--pp-muted); text-transform: none; letter-spacing: 0; white-space: nowrap; margin: 0;
}
html.pw body.pp-edit-page #PageEditTabs > li > a:hover { color: var(--pp-ink); }
html.pw body.pp-edit-page #PageEditTabs > li > a.pw-active, html.pw body.pp-edit-page #PageEditTabs > li.uk-active > a { color: var(--pp-ink); }
html.pw body.pp-edit-page #PageEditTabs > li > a::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: -1px; height: 2px; border-radius: 2px; background: transparent; }
html.pw body.pp-edit-page #PageEditTabs > li > a.pw-active::after, html.pw body.pp-edit-page #PageEditTabs > li.uk-active > a::after { background: var(--pp-accent); }
html.pw body.pp-edit-page #PageEditTabs > li > a#_ProcessPageEditDelete { color: var(--pp-danger); opacity: .8; }
.pp-tab-count { display: inline-grid; place-items: center; min-width: 22px; height: 20px; padding: 0 6px; border-radius: 6px; background: var(--pp-surface-2); border: 1px solid var(--pp-line); font-size: .75rem; color: var(--pp-ink-2); }
.pp-tab-lock svg.i { width: 14px; height: 14px; }

/* pola: bez ramek i zwijania, etykieta nad polem, podpowiedź pod */
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit > .Inputfields { padding: 0; margin: 0; }
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit > .Inputfields > .InputfieldWrapper > :is(.Inputfields, .InputfieldContent) { padding: 22px !important; margin: 0 !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield { border: 0 !important; background: none !important; box-shadow: none !important; outline: 0 !important; }
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit > .Inputfields > .InputfieldWrapper { padding: 0 !important; margin: 0 !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfields > .Inputfield.uk-grid-margin, html.pw body.pp-edit-page .pp-edit-main .Inputfields > .Inputfield + .Inputfield:not(.InputfieldColumnWidth) { margin-top: 22px !important; }
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit > .Inputfields > .InputfieldWrapper > .Inputfields > .Inputfield { padding: 0 !important; }
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields > .Inputfield.InputfieldColumnWidth:not(.InputfieldColumnWidthFirst) { padding-left: 16px !important; }
/* zagnieżdżone grupy pól (np. „Kontakt”) jako sekcje z nagłówkiem */
html.pw body.pp-edit-page .pp-edit-main .Inputfields > .InputfieldFieldset > .InputfieldHeader { font: 700 1.0625rem/1.3 var(--pp-font-display); padding-bottom: 12px !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfields > .InputfieldFieldset:not(.InputfieldRowFirst) { border-top: 1px solid var(--pp-line) !important; padding-top: 22px !important; }
html.pw body.pp-edit-page .pp-edit-main .InputfieldFieldset > .InputfieldContent > .Inputfields > .Inputfield { padding-top: 0 !important; padding-bottom: 0 !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield > .InputfieldHeader {
	padding: 0 0 7px !important; margin: 0; font-weight: 600; font-size: .875rem; color: var(--pp-ink); background: none !important; border: 0; text-transform: none; letter-spacing: 0;
}
html.pw body.pp-edit-page .pp-edit-main .Inputfield > .InputfieldHeader .toggle-icon,
html.pw body.pp-edit-page .pp-edit-main .Inputfield > .InputfieldHeader > i.fa:not(.toggle-icon) { display: none; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield > .InputfieldContent { padding: 0 !important; background: none; border: 0; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield p.notes, html.pw body.pp-edit-page .pp-edit-main .Inputfield p.description {
	background: none !important; color: var(--pp-muted); font-size: .8125rem; padding: 0; margin: 7px 0 0; font-style: normal;
}
html.pw body.pp-edit-page .pp-edit-main .Inputfield p.description { margin: 0 0 8px; }
html.pw body.pp-edit-page .pp-edit-main .InputfieldStateCollapsed > .InputfieldContent { display: block !important; }
html.pw body.pp-edit-page .pp-edit-main .tox-tinymce { border: 1px solid var(--pp-line-strong) !important; border-radius: 10px !important; }
html.pw body.pp-edit-page .pp-edit-main .InputfieldDatetime input { max-width: 100%; width: 100%; }
/* kategorie (TextTags) jak chipy z makiety */
html.pw body.pp-edit-page .pp-edit-main .selectize-control.multi .selectize-input { min-height: 44px; padding: 6px 8px; border: 1px solid var(--pp-line-strong); border-radius: 10px; box-shadow: none; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
html.pw body.pp-edit-page .pp-edit-main .selectize-control.multi .selectize-input > div[data-value] { display: inline-flex; align-items: center; gap: 6px; height: 28px; margin: 0; padding: 0 4px 0 9px !important; border-radius: 6px; border: 0; background: var(--pp-accent-soft); color: var(--pp-accent-ink); font-weight: 600; font-size: .8125rem; }
html.pw body.pp-edit-page .pp-edit-main .selectize-control.multi .selectize-input > div[data-value] .remove { border-left: 0 !important; background: none !important; position: static; border: 0; padding: 0 5px; margin: 0; color: var(--pp-accent-ink); font-size: 1rem; line-height: 1; }
html.pw body.pp-edit-page .pp-edit-main .selectize-control.multi .selectize-input > input { min-height: 28px !important; height: 28px; border: 0 !important; box-shadow: none !important; }

/* Natywne przyciski nagłówka i menu zapisu pozostają dostępne. */


/* pasek zapisu przyklejony do dołu okna */
html.pw .pp-shell #ProcessPageEdit :is(#wrap_submit_save, #wrap_submit_publish) {
	position: fixed; left: var(--pp-sidebar); right: 0; bottom: 0; z-index: 30; width: auto !important; margin: 0 !important;
	padding: 12px 32px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	background: rgba(255, 255, 255, .92); backdrop-filter: blur(12px); border-top: 1px solid var(--pp-line);
}
html.pw .pp-shell #ProcessPageEdit :is(#wrap_submit_save, #wrap_submit_publish) > .InputfieldContent { display: flex; justify-content: flex-end; align-items: center; gap: 12px; padding: 0 !important; min-height: 0 !important; }
html.pw .pp-shell #ProcessPageEdit :is(#submit_save, #submit_publish, #submit_save_unpublished) { height: 44px; padding: 0 20px; border-radius: 10px !important; font-weight: 700; }
.pp-savebar-status { margin-right: auto; display: none; align-items: center; gap: 8px; color: var(--pp-warn); font-size: .875rem; font-weight: 600; }
.pp-savebar-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.pp-dirty .pp-savebar-status { display: flex; }
body.pp-edit-page #pw-content-body { padding-bottom: 96px; }

/* ================================================================ stopka */

.pp-footer { padding: 0 32px 24px; }
.pp-footer:not(:has(#debug_toggle, #debug)) { display: none; }

/* ================================================================ logowanie */

/* Konkat centruje logowanie w wąskim pudełku (body max 380px) — tu cały ekran należy do układu */
html.pw:has(body.pp-login-page) { display: block !important; min-height: 0 !important; }
html.pw body.pp-login-page.ProcessLogin, html.pw body.pp-login-page {
	background: var(--pp-surface) !important; max-width: none !important; max-height: none !important; min-height: 100vh !important;
	width: 100% !important; margin: 0 !important; padding: 0 !important; display: block !important; border: 0 !important;
}
.pp-login { min-height: 100vh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); background: var(--pp-surface); }
.pp-login-art { position: relative; background: var(--pp-brand); color: #f4ede2; padding: 48px; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; overflow: hidden; }
.pp-login-art::before {
	content: ""; position: absolute; inset: auto -120px -160px auto; width: 520px; height: 520px; border-radius: 50%;
	border: 1px solid rgba(244, 237, 226, .14); box-shadow: 0 0 0 60px rgba(244, 237, 226, .03), 0 0 0 140px rgba(244, 237, 226, .025);
}
.pp-login-art .pp-site { padding: 0; }
.pp-login-art .pp-site b { color: #fff; font-size: 1rem; }
.pp-login-art .pp-site small { color: rgba(244, 237, 226, .7); }
.pp-login-art blockquote { margin: 0; padding: 0; border: 0; max-width: 30ch; font: 600 1.5rem/1.35 var(--pp-font-display); color: #fff; position: relative; }
.pp-login-art blockquote small { display: block; margin-top: 12px; font: 500 .875rem var(--pp-font-ui); color: rgba(244, 237, 226, .72); }
.pp-login-form { display: flex; flex-direction: column; align-items: center; padding: 48px 24px 32px; gap: 32px; }
.pp-login-main { flex: 1; display: grid; place-items: center; width: 100%; }
.pp-login-box { width: 100%; max-width: 380px; display: grid; gap: 20px; }
.pp-login-head h1 { font: 800 1.75rem/1.2 var(--pp-font-display); margin: 0; }
.pp-login-head .lead { color: var(--pp-muted); margin: 6px 0 0; }
.pp-login-links { display: grid; gap: 8px; justify-items: center; text-align: center; color: var(--pp-muted); font-size: .8125rem; margin: 0; }
.pp-login-links a { font-size: .875rem; font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; }
.pp-login-links a:hover { text-decoration: underline; }
.pp-login-links svg.i { width: 15px; height: 15px; }
.pp-login-support {
	width: 100%; max-width: 380px; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding: 14px 16px;
	border-radius: 12px; background: var(--pp-surface-2); border: 1px solid var(--pp-line); color: var(--pp-muted); font-size: .8125rem; line-height: 1.5;
}
.pp-login-support .mark { width: 34px; height: 34px; border-radius: 9px; background: var(--pp-surface); border: 1px solid var(--pp-line); color: var(--pp-ink-2); display: grid; place-items: center; }
.pp-login-support b { display: block; color: var(--pp-ink); font-size: .875rem; }
.pp-login-support p { margin: 0; }
.pp-login-support a { font-weight: 600; text-decoration: none; }
.pp-login-support a:hover { text-decoration: underline; }
.pp-login-support .sel { overflow-wrap: anywhere; }

/* formularz ProcessLogin w nowym układzie */
.pp-login-content form, .pp-login-content .Inputfields, .pp-login-content .InputfieldForm { margin: 0; padding: 0; }
html.pw .pp-login-content form.InputfieldForm { margin: 0 !important; padding: 0 !important; width: 100% !important; max-width: none !important; }
html.pw .pp-login-content .Inputfields { display: grid !important; gap: 18px; list-style: none; padding: 0 !important; margin: 0 !important; width: 100% !important; }
html.pw .pp-login-content .Inputfield, html.pw .pp-login-content .InputfieldContent { width: 100% !important; padding: 0 !important; }
html.pw .pp-login-content input.uk-input { width: 100% !important; max-width: none !important; }
html.pw .pp-login-content .InputfieldHeader .InputfieldRequired, html.pw .pp-login-content .InputfieldHeader::after { display: none; }
html.pw .pp-login-content .Inputfield { margin: 0 !important; padding: 0 !important; border: 0 !important; outline: 0 !important; background: none !important; box-shadow: none !important; width: 100% !important; }
html.pw .pp-login-content .InputfieldHeader { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 0 0 7px !important; margin: 0; font-weight: 600; font-size: .875rem; color: var(--pp-ink); background: none; border: 0; }
html.pw .pp-login-content .InputfieldHeader i, html.pw .pp-login-content .InputfieldHeader .toggle-icon { display: none; }
html.pw .pp-login-content .InputfieldContent { padding: 0 !important; background: none; border: 0; }
html.pw .pp-login-content input[type=text], html.pw .pp-login-content input[type=password], html.pw .pp-login-content input[type=email] {
	width: 100% !important; height: 46px; padding: 0 14px; font-size: 1rem;
}
html.pw .pp-login-content button[type=submit], html.pw .pp-login-content .InputfieldSubmit button {
	width: 100%; height: 48px; font-size: 1rem; border-radius: 10px; justify-content: center;
}
html.pw .pp-login-content .InputfieldSubmit .InputfieldContent { display: block; }
.pp-forgot { font-size: .875rem; font-weight: 600; text-decoration: none; }
.pp-forgot:hover { text-decoration: underline; }
.pp-login-content .pw-notices, .pp-login-box .pw-notices { margin: 0; }
.pp-login-box .pw-notices .uk-alert, .pp-login-box .pw-notices li { border-radius: 10px; }
#ProcessLoginForm .InputfieldHidden { display: none; }

/* ================================================================ tablet / telefon */

@media (max-width: 1100px) {
	.pp-quick { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
	.pp-dash { grid-template-columns: minmax(0, 1fr); }
	.pp-app { grid-template-columns: minmax(0, 1fr); }
	.pp-sidebar {
		position: fixed; left: 0; top: 0; bottom: 0; height: auto; width: min(300px, 86vw);
		transform: translateX(-102%); transition: transform .2s; box-shadow: var(--pp-shadow-pop);
		padding-top: calc(18px + env(safe-area-inset-top, 0px));
	}
	body.pp-nav-open .pp-sidebar { transform: none; }
	body.pp-nav-open .pp-scrim { display: block; position: fixed; inset: 0; z-index: 35; background: rgba(36, 29, 24, .35); }
	.pp-topbar .pp-burger { display: inline-flex; }
	.pp-topbar { padding: 10px 16px; }
	.pp-topbar .pw-search-form kbd, .pp-see span { display: none; }
	.pp-shell #main.pw-container { padding: 4px 16px 40px !important; }
	.pp-shell .pw-notices { margin: 0 16px; }
	.pp-footer { padding: 0 16px 16px; }
	.pp-login { grid-template-columns: minmax(0, 1fr); }
	.pp-login-art { padding: 28px 20px; gap: 24px; }
	.pp-login-art blockquote { font-size: 1.125rem; }
	.pp-login-form { padding: 32px 16px 40px; }
	.pp-login-main { place-items: start center; }
	.pp-table .col-cat, .pp-table .col-date { display: none; }
	.pp-table td.acts .pp-btn:not(.icon) span { display: none; }
	.pp-table td.acts .pp-btn:not(.icon) { width: 34px; padding: 0; }
	.pp-page-head h1, html.pw #pw-content-title, .pp-login-head h1 { font-size: 1.5rem; }
	.pp-edit { grid-template-columns: minmax(0, 1fr); }
	.pp-edit-side { position: static; }
	html.pw .pp-shell #ProcessPageEdit :is(#wrap_submit_save, #wrap_submit_publish) { left: 0; padding-left: 16px !important; padding-right: 16px !important; }
	html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit > .Inputfields > .InputfieldWrapper > :is(.Inputfields, .InputfieldContent) { padding: 16px !important; }
	html.pw #pw-content-head.pp-custom-head #pw-content-head-buttons { margin-left: 0; }
	body.pp-tree .PageList .PageList { margin-left: 16px; }
}
@media (max-width: 560px) {
	html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields > .Inputfield.InputfieldColumnWidth, html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields > .Inputfield.InputfieldColumnWidth:not(.InputfieldColumnWidthFirst) { width: 100% !important; padding-left: 0 !important; }
	html.pw body.pp-edit-page .pp-edit-main .Inputfields > .Inputfield.InputfieldColumnWidth:not(.InputfieldColumnWidthFirst) { margin-top: 22px !important; }
	body.pp-tree .PageListItem { grid-template-columns: minmax(0, 1fr) auto; padding-right: 8px; }
	/* lista wpisów: tytuł na całą szerokość, pod nim status i akcje */
	.pp-table thead { display: none; }
	.pp-table tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; padding: 12px 16px; border-bottom: 1px solid var(--pp-line); }
	.pp-table tbody tr:last-child { border-bottom: 0; }
	.pp-table tbody td { padding: 0; border: 0; }
	.pp-table tbody td.title { grid-column: 1 / -1; }
	.pp-table tbody td.col-date { display: block; grid-column: 1 / -1; grid-row: 2; font-size: .8125rem; color: var(--pp-muted); }
	.pp-table tbody td.col-cat { display: none; }
	.pp-quick { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.pp-tile { flex-direction: row; align-items: center; padding: 14px; }
	.pp-tile > span:last-child { display: none; }
	.pp-page-head .pp-btn { width: 100%; }
	.pp-filter { flex-basis: 100%; }
}

/* ---------- Jasne nagłówki powtarzanych pozycji ---------- */
html.pw body.pp-edit-page #ProcessPageEdit .InputfieldRepeaterItem > .InputfieldHeader {
	background: var(--pp-surface-2) !important; color: var(--pp-ink) !important;
	border: 1px solid var(--pp-line) !important; border-radius: 10px !important;
	padding: 10px 14px !important; font-weight: 600; font-size: .9rem;
}
html.pw body.pp-edit-page #ProcessPageEdit .InputfieldRepeaterItem > .InputfieldHeader * { color: inherit !important; }
html.pw body.pp-edit-page #ProcessPageEdit .InputfieldRepeaterItem.InputfieldStateCollapsed > .InputfieldHeader { margin-bottom: 0 !important; }
html.pw body.pp-edit-page #ProcessPageEdit .InputfieldRepeaterItem > .InputfieldContent { border: 0 !important; background: none !important; padding: 14px 0 6px !important; }
html.pw .pp-shell #ProcessPageEdit #submit_save_unpublished { background: var(--pp-surface) !important; color: var(--pp-ink) !important; border: 1px solid var(--pp-line-2, var(--pp-line)) !important; }
html.pw .pp-shell #ProcessPageEdit #submit_save_unpublished[hidden] { display: none !important; }

/* ---------- Natywne kopie PW w nagłówku; oryginały pozostają w formularzu ---------- */
body.pp-head-save-on.pp-edit-page #pw-content-body { padding-bottom: 32px; }
.pp-head-save { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.pp-head-save .pp-savebar-status { margin-right: 8px; }
html.pw .pp-head-save :is(#submit_save_copy, #submit_publish_copy, #submit_save_unpublished_copy) { height: 40px; padding: 0 18px; border-radius: 10px !important; font-weight: 700; margin: 0 !important; }
html.pw .pp-head-save #submit_save_unpublished_copy { background: var(--pp-surface) !important; color: var(--pp-ink) !important; border: 1px solid var(--pp-line) !important; }
html.pw .pp-head-save #submit_save_unpublished_copy[hidden] { display: none !important; }
/* nagłówek edycji przyklejony pod górnym paskiem — zapis zawsze pod ręką */
html.pw body.pp-head-save-on #pw-content-head.pp-custom-head {
	position: sticky; top: 64px; z-index: 25; background: rgba(245, 243, 239, .92);
	-webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); padding-bottom: 12px; margin-bottom: 12px;
}
html.pw body.pp-head-save-on #pw-content-head.pp-custom-head #pw-content-head-buttons { flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 900px) {
	html.pw body.pp-head-save-on #pw-content-head.pp-custom-head { position: static; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
	html.pw body.pp-head-save-on .pp-head-save > * { flex: none; width: auto; }
	/* na telefonie przyciski zapisu w dolnym pasku — nagłówek ucieka przy przewijaniu */
	html.pw body.pp-head-save-on .pp-head-save {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; justify-content: flex-end;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
		background: rgba(255, 255, 255, .94); backdrop-filter: blur(12px); border-top: 1px solid var(--pp-line);
	}
	html.pw body.pp-head-save-on .pp-head-save .pp-savebar-status { margin-right: auto; }
	body.pp-head-save-on.pp-edit-page #pw-content-body { padding-bottom: 96px; }
}

/* pola w kolumnach: opis pod polem, żeby pola w jednym rzędzie stały równo */
html.pw body.pp-edit-page .pp-edit-main .InputfieldColumnWidth:is(.InputfieldText, .InputfieldURL, .InputfieldEmail, .InputfieldInteger, .InputfieldDatetime, .InputfieldPageAutocomplete, .InputfieldSelect, .InputfieldTextTags) > .InputfieldContent { display: flex; flex-direction: column; }
html.pw body.pp-edit-page .pp-edit-main .InputfieldColumnWidth:is(.InputfieldText, .InputfieldURL, .InputfieldEmail, .InputfieldInteger, .InputfieldDatetime, .InputfieldPageAutocomplete, .InputfieldSelect, .InputfieldTextTags) > .InputfieldContent > p.description { order: 2; margin: 8px 0 0; }
/* równe kolumny: każdy element rzędu ma ten sam odstęp z lewej, rząd przesunięty o tyle samo */
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields.Inputfields.Inputfields:has(> .InputfieldColumnWidth) { margin-left: -16px !important; width: calc(100% + 16px) !important; }
html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields.Inputfields:has(> .InputfieldColumnWidth) > .Inputfield.Inputfield.Inputfield { padding-left: 16px !important; }
@media (max-width: 560px) {
	html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields.Inputfields.Inputfields:has(> .InputfieldColumnWidth) { margin-left: 0 !important; }
	html.pw body.pp-edit-page .pp-edit-main #ProcessPageEdit .Inputfields.Inputfields:has(> .InputfieldColumnWidth) > .Inputfield.Inputfield.Inputfield { padding-left: 0 !important; }
}

/* podpis twórców pod pomocą */
.pp-help-mini .sel { color: var(--pp-ink); font-weight: 600; white-space: nowrap; }
.pp-brand { display: flex; align-items: center; gap: 6px; margin: 10px 4px 0; color: var(--pp-muted); font-size: .75rem; }
.pp-brand svg.i { width: 13px; height: 13px; color: var(--pp-accent); flex: none; }
.pp-sidebar .pp-brand a, .pp-brand b { display: inline; padding: 0; background: none; color: var(--pp-ink-2, var(--pp-ink)); font-weight: 600; text-decoration: none; }
.pp-brand a:hover { color: var(--pp-accent); text-decoration: underline; }

/* Dane parafii → Widoczność: podgląd llms.txt (FsvSeo) */
.pp-llms-preview { max-height: 420px; overflow: auto; margin: 0; padding: 14px 16px; white-space: pre-wrap; word-break: break-word; background: var(--pp-surface-2); border: 1px solid var(--pp-line); border-radius: 10px; color: var(--pp-ink-2); font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.pp-llms-links { margin: 10px 0 0; color: var(--pp-muted); font-size: .875rem; }
.pp-llms-links a { color: var(--pp-accent-ink); font-weight: 600; }
.pp-llms-edit { margin-top: 12px; }

/* Strona → Google i udostępnianie (FsvSeo): podgląd wyniku wyszukiwania */
.pp-serp { max-width: 600px; padding: 14px 16px; background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: var(--pp-r-md); font-family: Arial, ui-sans-serif, system-ui, sans-serif; }
.pp-serp-site { display: flex; flex-direction: column; color: #202124; font-size: 14px; line-height: 1.3; }
.pp-serp-site span { color: #4d5156; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-serp-title { margin-top: 6px; color: #1a0dab; font-size: 20px; line-height: 1.3; overflow-wrap: anywhere; }
.pp-serp-desc { margin-top: 4px; color: #4d5156; font-size: 14px; line-height: 1.58; overflow-wrap: anywhere; }
.pp-serp.is-hidden .pp-serp-site, .pp-serp.is-hidden .pp-serp-title, .pp-serp.is-hidden .pp-serp-desc { opacity: .4; text-decoration: line-through; }
.pp-serp-hidden, .pp-serp-note { margin: 8px 0 0; color: var(--pp-warn); font: 600 13px/1.4 var(--pp-font-ui); }
.pp-serp-hidden[hidden] { display: none; }
.pp-count { display: block; margin-top: 4px; color: var(--pp-muted); font-size: 12px; }
.pp-count.over { color: var(--pp-warn); font-weight: 600; }

/* Pulpit → Widoczność w Google (FsvSeo::audit) */
.pp-pill.warn { background: var(--pp-warn-soft); color: var(--pp-warn); }
.pp-rows li .row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 10px 12px; }
.pp-seo-card .pp-rows .t { white-space: normal; }
.pp-filter-note { margin: 0 0 16px; padding: 10px 14px; background: var(--pp-accent-soft); border-radius: var(--pp-r-md); color: var(--pp-ink-2); font-size: .875rem; }
.pp-filter-note svg.i { color: var(--pp-accent); vertical-align: -3px; margin-right: 6px; }

/* Edycja → „Google i udostępnianie” (fs_seo): rozwijany panel, domyślnie zwinięty */
html.pw body.pp-edit-page .pp-edit-main .Inputfields > .Inputfield_fs_seo { border-top: 0 !important; padding-top: 8px !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader {
	display: flex !important; align-items: center; gap: 10px; cursor: pointer; user-select: none;
	padding: 14px 16px !important; margin: 0 !important; background: var(--pp-surface); border: 1px solid var(--pp-line); border-radius: var(--pp-r-md);
}
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader:hover { border-color: var(--pp-line-strong); }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader::after {
	content: "Opcjonalnie: tytuł, opis i zdjęcie w Google i przy udostępnianiu"; display: block !important; margin-left: auto; margin-right: 26px;
	font: 400 .8125rem/1.3 var(--pp-font-ui); color: var(--pp-muted); text-align: right;
}
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader { position: relative; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader::before {
	content: ""; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; margin-top: -6px;
	border-right: 2px solid var(--pp-muted); border-bottom: 2px solid var(--pp-muted); transform: rotate(45deg); transition: transform .15s;
}
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo:not(.InputfieldStateCollapsed) > .InputfieldHeader::before { transform: rotate(-135deg); margin-top: -2px; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo:not(.InputfieldStateCollapsed) > .InputfieldHeader { border-radius: var(--pp-r-md) var(--pp-r-md) 0 0; border-bottom-color: transparent; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo.InputfieldStateCollapsed > .InputfieldContent { display: none !important; }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldContent { padding: 16px !important; border: 1px solid var(--pp-line); border-top: 0; border-radius: 0 0 var(--pp-r-md) var(--pp-r-md); }
html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldContent > .Inputfields > .Inputfield + .Inputfield { margin-top: 16px; }
@media (max-width: 640px) {
	html.pw body.pp-edit-page .pp-edit-main .Inputfield_fs_seo > .InputfieldHeader::after { display: none !important; }
}

/* Keep native move controls and nested drop zones usable in the custom tree. */
body.pp-tree .PageListItem:has(.PageListActionMove) .pp-ti { cursor: grab; touch-action: none; }
body.pp-tree .PageListSorting .PageListSortItem { display: block; cursor: grabbing; }
body.pp-tree .PageListSorting .PageListMoveNote { display: block; margin-top: 10px; }
body.pp-tree .PageListSorting .PageListPlaceholder { min-height: 44px; margin: 6px 0 10px 32px !important; }
body.pp-tree .PageListSorting .PageListPlaceholderItem { min-height: 44px; height: auto; margin: 0; border: 0; background: transparent; }
body.pp-tree .PageListSorting .PageListPlaceholderItem::after { content: "Upuść tutaj jako podpozycję"; color: var(--pp-muted); font-size: .8125rem; }
body.pp-tree .PageListSortPlaceholder { min-height: 56px; border: 2px dashed var(--pp-accent); background: var(--pp-accent-soft); border-radius: 10px; }
body.pp-tree .pp-drop-edge { box-sizing: border-box; min-height: 44px; margin: 8px 0; padding: 11px 16px; border: 2px dashed var(--pp-line-strong); border-radius: 8px; color: var(--pp-muted); background: var(--pp-surface, #fff); font-size: .8125rem; }
body.pp-tree .pp-drop-edge.is-target { border-color: var(--pp-accent); background: var(--pp-accent-soft); color: var(--pp-accent-ink); font-weight: 700; }
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.pp-dragging { z-index: 1000; border: 2px solid var(--pp-accent); background: var(--pp-accent-soft); box-shadow: 0 12px 28px rgba(0,0,0,.22); opacity: .95; cursor: grabbing; }
body.pp-tree .pp-dragging .PageListActions, body.pp-tree .pp-dragging .PageListMoveNote { visibility: hidden; }
body.pp-tree .PageListSortPlaceholder { box-sizing: border-box; width: auto !important; margin: 8px 0; min-height: 60px; }
body.pp-tree .PageListSortPlaceholder::after { content: "Upuść tutaj"; display: block; padding: 16px; color: var(--pp-accent-ink); font-weight: 700; font-size: .875rem; }
html.pw body.pp-tree #pw-content-body .PageListActions > li.PageListActionMove { display: block !important; }
@media (max-width: 600px) {
 body.pp-tree .PageList > .PageListItem, body.pp-tree .PageList .PageListItem { grid-template-columns: minmax(0, 1fr); gap: 6px; }
 html.pw body.pp-tree #pw-content-body .PageList .PageListItem .PageListActions.actions { justify-content: flex-end; }
 body.pp-tree .PageListItem > a.PageListPage { gap: 8px; }
 body.pp-tree .pp-tt small { white-space: normal; overflow-wrap: anywhere; }
 body.pp-tree .PageListSorting .PageListPlaceholder { margin-left: 16px !important; }
}

/* Zwięzłe drzewo: tytuł, licznik dzieci i akcje w jednym wierszu. */
html.pw body.pp-tree #pw-content-body .PageList .PageListItem {
 display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px;
 min-height:56px; padding:7px 12px; margin-bottom:4px; border-radius:9px;
}
html.pw body.pp-tree #pw-content-body .PageListItem > a.PageListPage {
 flex:0 1 auto; max-width:100%; gap:8px;
}
html.pw body.pp-tree #pw-content-body .PageListItem .label_title { gap:8px; }
html.pw body.pp-tree #pw-content-body .PageListItem .pp-ti { width:28px; height:28px; }
html.pw body.pp-tree #pw-content-body .PageListItem > .PageListNumChildren {
 flex:none; position:static; margin:0; padding:2px 7px; border-radius:12px;
 background:var(--pp-line); color:var(--pp-ink-2); font-size:.75rem; line-height:1.4;
}
html.pw body.pp-tree #pw-content-body .PageList .PageListItem > .PageListActions.actions {
 flex:0 1 auto; margin-left:auto; gap:3px; padding:0; align-items:center;
}
html.pw body.pp-tree #pw-content-body .PageListActions > li { float:none; padding:0; margin:0; }
html.pw body.pp-tree #pw-content-body .PageListActions > li > a {
 height:32px; padding:0 9px; justify-content:center; vertical-align:middle;
}
html.pw body.pp-tree #pw-content-body .PageListActions > li:is(.PageListActionEdit,.PageListActionOpen) > a { min-width:72px; }
html.pw body.pp-tree #pw-content-body .PageListItem > .PageListNote { flex-basis:100%; }
@media(max-width:1100px) {
 html.pw body.pp-tree #pw-content-body .PageList .PageListItem > .PageListActions.actions { flex-basis:100%; }
}
@media(max-width:600px) {
 html.pw body.pp-tree #pw-content-body .PageList .PageListItem { padding:8px; gap:5px 8px; }
 html.pw body.pp-tree #pw-content-body .PageListItem > a.PageListPage { max-width:calc(100% - 48px); }
 html.pw body.pp-tree #pw-content-body .PageListActions > li > a { min-height:36px; padding:0 8px; }
}

/* PW ustawia akcjom dodatkowym inline-block po animacji; zachowaj wspólną oś. */
html.pw body.pp-tree #pw-content-body .PageListActions > li.PageListActionExtra > a {
 display:inline-flex !important; align-items:center; height:32px; gap:4px;
}
html.pw body.pp-tree #pw-content-body .PageListItem > .PageListNumChildren:empty { padding:0; background:none; }
html.pw body.pp-tree #pw-content-body .PageListItem .pp-tt small.pp-trash-note {
 white-space:normal; overflow:visible; line-height:1.4;
}
@media(max-width:600px) {
 html.pw body.pp-tree #pw-content-body .PageListActions > li.PageListActionExtra > a { min-height:36px; }
}

/* Menu settings and child management share one section in the Content tab. */
#wrap_MenuSubmenu { margin-top: 20px; }
.pp-menu-preview ul { margin: 8px 0; padding-left: 24px; }
.pp-menu-preview li { margin: 6px 0; }
.pp-menu-preview small { color: var(--pp-muted); overflow-wrap: anywhere; }

/* Keep the selected move row unmistakable before and during dragging. */
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.PageListSortItem,
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.pp-dragging {
 background: var(--pp-accent); border-color: var(--pp-accent-ink); color: #fff;
 box-shadow: 0 6px 18px rgba(70, 48, 23, .28); opacity: 1;
}
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.PageListSortItem *,
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.pp-dragging * { color: #fff !important; }
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.PageListSortItem .PageListActions a,
html.pw body.pp-tree #pw-content-body .PageList .PageListItem.PageListSortItem .PageListNumChildren {
 background: transparent; border-color: rgba(255, 255, 255, .5);
}
/* The move handler preserves the selected row instead of browser scroll anchoring. */
body.pp-tree .PageListRoot { overflow-anchor: none; }

/* Menu mobilne: kompaktowy edytor pojedynczego pola. */
html.pw body.pp-edit-page #ProcessPageEdit.ProcessPageEditSingleField :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) {
	padding: 24px !important;
}
html.pw body.pp-edit-page #ProcessPageEdit.ProcessPageEditSingleField :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) > .InputfieldContent {
	padding-top: 4px !important;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem {
	padding-top: 0 !important; margin-top: 10px !important; border-top: 0 !important;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem.InputfieldStateCollapsed > .InputfieldContent {
	display: none !important;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem > .InputfieldHeader {
	min-height: 46px; box-sizing: border-box; display: flex; align-items: center; gap: 10px;
	padding: 10px 14px !important; margin: 0 !important;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem > .InputfieldHeader .InputfieldRepeaterDrag,
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem > .InputfieldHeader .toggle-icon {
	display: inline-block;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem > .InputfieldContent {
	padding: 16px 14px 8px !important;
}
html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem .Inputfield.uk-grid-margin {
	margin-top: 14px !important;
}
@media (max-width: 900px) {
	html.pw body.pp-edit-page #ProcessPageEdit.ProcessPageEditSingleField :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) { padding: 16px !important; }
	html.pw body.pp-edit-page #ProcessPageEdit :is(#wrap_Inputfield_menu_dolne, #wrap_Inputfield_slider) .InputfieldRepeaterItem > .InputfieldContent { padding: 14px 4px 6px !important; }
}

/* Włączanie paska zachowuje zapisane pozycje menu. */
html.pw body.pp-edit-page #ProcessPageEdit.ProcessPageEditSingleField :is(#wrap_Inputfield_menu_dolne_aktywne, #wrap_Inputfield_slider_przyciemnienie) {
	padding: 20px 24px !important; margin: 0 !important; border-bottom: 1px solid var(--pp-line) !important;
}
@media (max-width: 900px) {
	html.pw body.pp-edit-page #ProcessPageEdit.ProcessPageEditSingleField :is(#wrap_Inputfield_menu_dolne_aktywne, #wrap_Inputfield_slider_przyciemnienie) { padding: 16px !important; }
}

/* Administration starts collapsed; nested sections share the regular disclosure style. */
.pp-admin-group { margin-top: 14px; }
.pp-admin-group > .pp-group-items { padding-left: 4px; }

/* First step of creating a regular page: explain what becomes available next. */
.pp-add-help { padding: 20px 24px; border: 1px solid var(--pp-line); border-radius: 12px; background: #f4ede2; }
.pp-add-help ol { display: flex; flex-wrap: wrap; gap: 12px 32px; list-style: none; padding: 0; margin: 0 0 12px; color: var(--pp-muted); }
.pp-add-help li[aria-current] { color: var(--pp-accent, #7e6337); }
.pp-add-help p { margin: 0 0 8px; }
.pp-add-help small { display: block; color: var(--pp-ink-2); }

.pp-add-help > summary { cursor: pointer; font-weight: 600; color: var(--pp-ink-2); }
.pp-add-help-content { padding-top: 16px; }
