/*
 * NOTICE: This software is owned and developed by Powersys. Only Powersys employees are allowed to use it.
 *
 * Site theme - 2026-10-21: modern look with the 2023 Powersys brand for all inner pages.
 * Loaded by head.php AFTER bootstrap and css/style.css: it restyles the existing classes (no page markup
 * change needed) and styles the new header (header.php: .pws-topbar, .pws-pagehead).
 * Brand tokens (global.powersys-solutions.com): black #0A0203, grey #717176, light grey #F2F2F2,
 * lime accent #BDE300. System grotesque font stack (brand fonts are commercial).
 * Login pages have their own stylesheet (css/login.css, body.pws-login).
 */

:root {
	--pws-black: #0A0203;
	--pws-ink: #1d1d22;
	--pws-grey: #717176;
	--pws-muted: #9a9aa0;
	--pws-line: #e3e3e7;
	--pws-light: #F2F2F2;
	--pws-surface: #ffffff;
	--pws-soft: #f7f7f8;
	--pws-accent: #BDE300;
	--pws-accent-soft: #f4f9d9;
	--pws-radius: 12px;
	--pws-shadow: 0 1px 2px rgba(10, 2, 3, 0.05), 0 6px 20px rgba(10, 2, 3, 0.06);
	--pws-font: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* ---------------------------------------------------------------- base */
body:not(.pws-login) {
	height: auto;
	min-height: 100vh;
	margin: 0;
	background: var(--pws-light);
	color: var(--pws-ink);
	font-family: var(--pws-font);
	font-size: 14px;
	-webkit-font-smoothing: antialiased;
}
body:not(.pws-login) h1, body:not(.pws-login) h2, body:not(.pws-login) h3,
body:not(.pws-login) h4, body:not(.pws-login) h5 {
	color: var(--pws-black);
	font-weight: 700;
	letter-spacing: -0.01em;
}
body:not(.pws-login) h2 { font-size: 22px; margin-bottom: 16px; }
body:not(.pws-login) h3 { font-size: 18px; }
body:not(.pws-login) a { color: var(--pws-black); }
body:not(.pws-login) a:hover { color: var(--pws-black); }
::selection { background: var(--pws-accent); color: var(--pws-black); }

/* ---------------------------------------------------------------- top bar (header.php) */
.pws-topbar {
	position: sticky;
	top: 0;
	z-index: 1030;
	display: flex;
	align-items: center;
	gap: 24px;
	height: 60px;
	padding: 0 24px;
	background: var(--pws-black);
	color: #fff;
}
.pws-topbar-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #fff !important;
	text-decoration: none;
}
.pws-topbar-brand img { width: 30px; height: auto; }
.pws-topbar-name {
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.pws-topbar-nav { display: flex; align-items: stretch; height: 100%; gap: 4px; }
.pws-nav-link {
	display: flex;
	align-items: center;
	padding: 0 14px;
	border-bottom: 3px solid transparent;
	border-top: 3px solid transparent;
	color: rgba(255, 255, 255, 0.68) !important;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.15s, border-color 0.15s;
}
.pws-nav-link:hover { color: #fff !important; }
.pws-nav-link.is-active { color: #fff !important; border-bottom-color: var(--pws-accent); }

.pws-topbar-tools { display: flex; align-items: center; gap: 12px; margin-left: auto; min-width: 0; }
.pws-topbar-select,
.pws-topbar-search input {
	height: 36px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	background-color: rgba(255, 255, 255, 0.08);
	color: #fff;
	font: inherit;
	font-size: 13px;
}
.pws-topbar-select {
	max-width: 230px;
	padding: 0 32px 0 12px;
	appearance: none;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 12px;
}
.pws-topbar-select option { color: var(--pws-ink); background: #fff; }
.pws-topbar-search { margin: 0; }
.pws-topbar-search input { width: 220px; padding: 0 12px; }
.pws-topbar-search input::placeholder { color: rgba(255, 255, 255, 0.5); }
.pws-topbar-select:focus,
.pws-topbar-search input:focus {
	outline: none;
	border-color: var(--pws-accent);
	box-shadow: 0 0 0 3px rgba(189, 227, 0, 0.35);
}
.pws-user { display: flex; align-items: center; gap: 10px; min-width: 0; }
.pws-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--pws-accent);
	color: var(--pws-black);
	font-size: 12px;
	font-weight: 700;
}
.pws-user-name {
	max-width: 190px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.8);
}
.pws-logout {
	padding: 6px 10px;
	border-radius: 8px;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}
.pws-logout:hover { background: rgba(255, 255, 255, 0.1); color: #fff !important; }

/* Page title (header.php, $title) */
.pws-pagehead { margin: 0; padding: 24px 24px 0; }
.pws-pagehead-title { margin: 0; font-size: 26px !important; }

/* ---------------------------------------------------------------- project menu (projectMenu.php) */
.bandProject {
	position: sticky !important;
	top: 60px;
	z-index: 1020;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	height: auto !important;
	width: auto !important;          /* style.css had width:100% (overflow with the margins) */
	margin: 16px 24px 0;
	padding: 0 12px;
	background: var(--pws-surface) !important;
	border-radius: var(--pws-radius);
	box-shadow: var(--pws-shadow);
}
.bandProject .projectbtn {
	float: none;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 14px 14px 11px;
	border: 0;
	border-bottom: 3px solid transparent;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none;
	color: var(--pws-grey);
	text-shadow: none;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
}
.bandProject .projectbtn:hover { color: var(--pws-black); text-decoration: none; border-bottom-color: var(--pws-line); }
.bandProject .projectbtn.selected,
.bandProject .projectbtn.selected:hover {
	color: var(--pws-black);
	border-bottom-color: var(--pws-accent);
	background: transparent !important;
	box-shadow: none;
	text-shadow: none;
}
.bandProject .menu { position: relative; display: flex; }
.bandProject .menu > .projectbtn::after { content: "\25BE"; margin-left: 6px; font-size: 11px; }
.bandProject .submenu {
	top: 100%;
	left: 0;
	min-width: 190px;
	margin: 0;
	padding: 6px;
	border: 1px solid var(--pws-line);
	border-radius: 10px;
	background: var(--pws-surface);
	box-shadow: 0 10px 30px rgba(10, 2, 3, 0.12);
	visibility: hidden;
	pointer-events: none;
	transform: translateY(4px);
	transition: opacity 0.12s, transform 0.12s, visibility 0.12s;
}
.bandProject .menu:hover > .submenu,
.bandProject .menu:focus-within > .submenu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
}
.bandProject .submenu > li > a {
	display: block;
	padding: 8px 10px;
	border-radius: 6px;
	color: var(--pws-ink);
	text-decoration: none;
}
.bandProject .submenu > li > a:hover { background: var(--pws-soft); text-decoration: none; }

/* ---------------------------------------------------------------- page containers */
.fullpage {
	padding: 24px 24px 48px !important;
	min-height: 0;
	background: transparent !important;
}
.fullpage::after { content: ""; display: table; clear: both; }
.container,
.issuesContainer,
.issueDetail,
.newIssue,
.contactDetail {
	background: var(--pws-surface) !important;
	border: 0 !important;
	border-radius: var(--pws-radius) !important;
	box-shadow: var(--pws-shadow) !important;
}
.container { max-width: 1420px; padding: 24px 28px !important; }
.issuesContainer { padding: 20px 24px !important; margin-left: 1% !important; width: 76.5% !important; }
.issueDetail { padding: 24px 28px !important; margin-left: 1% !important; width: 76.5% !important; font-size: 14px; }
.newIssue { padding: 24px 28px; font-size: 14px; }
.contactDetail { padding: 20px !important; margin-left: 1.5% !important; margin-right: 0 !important; margin-top: 0 !important; width: 19.5% !important; }

/* ---------------------------------------------------------------- tables */
.table { font-size: 14px; color: var(--pws-ink); --bs-table-hover-bg: var(--pws-accent-soft); }
.table > :not(caption) > * > * { padding: 10px 12px; border-bottom-color: var(--pws-line); }
.table > thead > tr > th,
.table-primary,
.table-primary > th,
.table-primary > td {
	--bs-table-bg: var(--pws-soft);
	--bs-table-accent-bg: transparent;
	--bs-table-striped-bg: var(--pws-soft);
	color: var(--pws-grey) !important;
	border-color: var(--pws-line) !important;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap;
}
.table-striped > tbody > tr:nth-of-type(odd) > * { --bs-table-accent-bg: #fbfbfc; }
.table > tbody > tr:hover > * { --bs-table-accent-bg: var(--pws-accent-soft); }
.tableVersion td { border-color: var(--pws-line); padding: 8px 10px; font-size: 13px; }

/* ---------------------------------------------------------------- links */
.projectLink { color: var(--pws-black) !important; font-weight: 600; text-decoration: none; }
.projectLink:hover {
	text-decoration: underline;
	text-decoration-color: var(--pws-accent);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}
.projectList { list-style: none; padding-left: 18px; }
.projectList > li { padding: 4px 0; }
h2 + .projectList { padding-left: 0; }
h2 + .projectList > li { padding: 10px 0; border-bottom: 1px solid var(--pws-line); }

/* ---------------------------------------------------------------- buttons */
.btn { border-radius: 8px; font-weight: 600; }
.btn-primary, .btn-primary:disabled {
	color: #fff !important;
	background-color: var(--pws-black) !important;
	border-color: var(--pws-black) !important;
}
.btn-primary:hover, .btn-primary:focus {
	color: #fff !important;
	background-color: #2a2a30 !important;
	border-color: #2a2a30 !important;
}
.btn-secondary {
	color: var(--pws-black) !important;
	background-color: #fff !important;
	border-color: #cfcfd4 !important;
}
.btn-secondary:hover, .btn-secondary:focus {
	background-color: var(--pws-soft) !important;
	border-color: var(--pws-black) !important;
}
.btn:focus-visible, .btn:focus { box-shadow: 0 0 0 3px rgba(189, 227, 0, 0.55) !important; }
.btn-link { color: var(--pws-black); font-weight: 600; }

/* ---------------------------------------------------------------- forms */
.form-control, .form-select, .custom-select, .editField,
.fullpage input[type="text"], .fullpage input[type="email"], .fullpage input[type="number"],
.fullpage input[type="date"], .fullpage input[type="password"], .fullpage select, .fullpage textarea {
	border: 1px solid #d5d5da;
	border-radius: 8px;
	background-color: #fff;
	color: var(--pws-ink);
	font-family: inherit;
}
.editField { height: 34px; padding: 0 10px; }
.form-control:focus, .form-select:focus, .custom-select:focus, .editField:focus,
.fullpage input:focus, .fullpage select:focus, .fullpage textarea:focus {
	outline: none;
	border-color: var(--pws-black);
	box-shadow: 0 0 0 3px rgba(189, 227, 0, 0.45);
}
.form-check-input:checked { background-color: var(--pws-black); border-color: var(--pws-black); }
legend { font-size: 16px; font-weight: 700; color: var(--pws-black); }
.box, .editBox {
	border: 1px solid var(--pws-line) !important;
	border-radius: var(--pws-radius) !important;
	background: var(--pws-soft) !important;
	color: var(--pws-ink) !important;
}
.box { padding: 16px !important; }
.editBox { padding: 20px !important; }
.issueSpec { color: var(--pws-grey); font-weight: 600; }

/* ---------------------------------------------------------------- issue page */
.issueTitle {
	margin: 0 0 16px !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: var(--pws-black) !important;
	text-shadow: none !important;
	letter-spacing: -0.01em !important;
	font-size: 24px;
}
.edit-ticket { top: 26px !important; right: 28px !important; }
.issueDescription, .issueMailContent, .issueHistory, .issueUpdate {
	margin: 0 0 16px !important;
	padding: 16px 20px !important;
	border: 1px solid var(--pws-line) !important;
	border-radius: var(--pws-radius) !important;
	background: var(--pws-surface) !important;
	font-family: inherit !important;
}
.issueDescription { border-left: 4px solid var(--pws-accent) !important; background: #fcfdf6 !important; }
.issueMailContent { background: var(--pws-soft) !important; }
.subject { font-size: 18px; color: var(--pws-black); }
.issueSeparation { background: var(--pws-line); }
.history { font-size: 16px; color: var(--pws-black); }
.author, .detailsList { color: var(--pws-grey); }
.oneNote { padding: 12px 0; border-bottom: 1px solid var(--pws-line); }
.contactCard { background: var(--pws-soft) !important; border: 1px solid var(--pws-line) !important; border-radius: 10px; padding: 10px !important; }
.settingBlock { border-color: var(--pws-line) !important; border-radius: 0 0 var(--pws-radius) var(--pws-radius); }
.icon { color: var(--pws-black); }

/* ---------------------------------------------------------------- bootstrap components */
.pagination { gap: 4px; flex-wrap: wrap; }
.page-link { border-radius: 8px !important; border-color: var(--pws-line); color: var(--pws-black); }
.page-link:hover { background: var(--pws-soft); color: var(--pws-black); }
.page-item.active .page-link { background: var(--pws-black); border-color: var(--pws-black); color: #fff; }
.alert { border-radius: 10px; border-width: 1px; }
.alert-success { background: var(--pws-accent-soft); border-color: #dfeea0; color: #3f4a00; }
.modal-content { border: 0; border-radius: 16px; box-shadow: 0 24px 60px rgba(10, 2, 3, 0.25); }
.modal-header, .modal-footer { border-color: var(--pws-line); }
.nav-tabs .nav-link { color: var(--pws-grey); font-weight: 600; }
.nav-tabs .nav-link.active { color: var(--pws-black); border-bottom: 3px solid var(--pws-accent); }
.ck.ck-editor__main > .ck-editor__editable { border-radius: 0 0 8px 8px; }


/* ---------------------------------------------------------------- 2026-10-21: home cards, admin members */
.pws-featured {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 20px;
	max-width: 1420px;
	margin: 0 auto 24px;
}
.pws-project-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-height: 150px;
	padding: 24px 28px;
	border-radius: 16px;
	background: var(--pws-black);
	color: #fff !important;
	text-decoration: none;
	overflow: hidden;
	box-shadow: var(--pws-shadow);
	transition: transform 0.15s, box-shadow 0.15s;
}
.pws-project-card::after {              /* faint sigle-like shape */
	content: "";
	position: absolute;
	right: -40px;
	bottom: -60px;
	width: 200px;
	height: 200px;
	border: 28px solid rgba(255, 255, 255, 0.05);
	border-radius: 0 60px 60px 0;
	transform: rotate(-8deg);
}
.pws-project-card:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(10, 2, 3, 0.22); color: #fff !important; }
.pws-project-card:focus-visible { outline: 3px solid var(--pws-accent); outline-offset: 3px; }
.pws-project-card-label { font-size: 12px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--pws-accent); }
.pws-project-card-name { font-size: 24px; font-weight: 700; letter-spacing: -0.01em; }
.pws-project-card-stats { display: flex; gap: 20px; margin-top: auto; font-size: 14px; color: rgba(255, 255, 255, 0.75); }
.pws-project-card-stats b { color: #fff; font-size: 18px; }
.pws-project-card-go {
	position: absolute;
	top: 24px;
	right: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--pws-accent);
	color: var(--pws-black);
	font-size: 20px;
	font-weight: 700;
}

.pws-muted { color: var(--pws-grey); }
.pws-badge {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 8px;
	border-radius: 999px;
	background: var(--pws-soft);
	border: 1px solid var(--pws-line);
	color: var(--pws-grey);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	vertical-align: middle;
}
.pws-badge-accent { background: var(--pws-accent); border-color: var(--pws-accent); color: var(--pws-black); }
.pws-panel-block {
	margin: 8px 0 24px;
	padding: 20px;
	border: 1px solid var(--pws-line);
	border-radius: var(--pws-radius);
	background: var(--pws-soft);
}
.pws-panel-block h3 { margin-top: 0; }
.pws-inline-form { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 0; }
.pws-inline-form .form-select { width: auto; min-width: 260px; max-width: 100%; }
.pws-checks { display: flex; flex-wrap: wrap; gap: 6px; }
.pws-check {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border: 1px solid var(--pws-line);
	border-radius: 999px;
	background: #fff;
	font-size: 13px;
	cursor: pointer;
	user-select: none;
}
.pws-check:has(input:checked) { border-color: var(--pws-black); background: var(--pws-accent-soft); }
.pws-check input { accent-color: var(--pws-black); margin: 0; }
.pws-user-projects { margin-top: 16px; }
.pws-membership { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--pws-line); }
.pws-user-projects .pws-inline-form { margin-top: 14px; }


/* ---------------------------------------------------------------- 2026-10-21: AI assistant (issue page) */
.pws-ai-card {
	margin-top: 16px;
	padding: 16px;
	border-radius: var(--pws-radius);
	background: var(--pws-black);
	color: #fff;
}
.pws-ai-card .pws-muted { color: rgba(255, 255, 255, 0.65); font-size: 13px; }
.pws-ai-card .btn-primary { background: var(--pws-accent) !important; border-color: var(--pws-accent) !important; color: var(--pws-black) !important; width: 100%; }
.pws-ai-title { margin: 0 0 6px; font-weight: 700; color: #fff; }
.pws-ai-title .pws-badge { background: rgba(255, 255, 255, 0.12); border-color: transparent; color: #fff; }
.pws-ai-loading { padding: 40px 0; text-align: center; color: var(--pws-grey); }
.pws-ai-loading::before {
	content: "";
	display: block;
	width: 32px;
	height: 32px;
	margin: 0 auto 12px;
	border: 3px solid var(--pws-line);
	border-top-color: var(--pws-accent);
	border-radius: 50%;
	animation: pws-spin 0.8s linear infinite;
}
@keyframes pws-spin { to { transform: rotate(360deg); } }
.pws-ai-label { display: block; margin: 12px 0 6px; font-weight: 700; color: var(--pws-black); }
.pws-ai-notes { margin-top: 12px; padding: 10px 12px; border-left: 4px solid var(--pws-accent); border-radius: 8px; background: var(--pws-soft); font-size: 13px; }
.pws-ai-sources { margin: 0; padding-left: 18px; font-size: 13px; }
.pws-ai-sources li { padding: 3px 0; }


/* ---------------------------------------------------------------- 2026-10-21: customer status check banner */
.pws-check-banner { margin: 0 0 16px; padding: 14px 18px; border-radius: var(--pws-radius); border: 1px solid; }
.pws-check-banner.is-todo { background: #fff7ed; border-color: #fdba74; }
.pws-check-banner.is-done { background: var(--pws-accent-soft); border-color: #dfeea0; }
.pws-check-title { margin: 0; font-weight: 700; color: var(--pws-black); }
.pws-check-banner.is-todo .pws-check-title { color: #9a3412; }
.pws-check-meta { margin: 4px 0 0; font-size: 13px; color: var(--pws-grey); }
.pws-check-msg { margin: 8px 0 0; font-weight: 600; }
.pws-check-form { margin-top: 12px; }
.pws-check-q { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-bottom: 10px; transition: opacity 0.15s; }
.pws-check-label { min-width: 220px; font-weight: 600; color: var(--pws-black); }
.pws-check-list { list-style: none; margin: 12px 0; padding: 0; }
.pws-check-list li { padding: 4px 0; }
.pws-check-list input { accent-color: var(--pws-black); margin-right: 6px; }

.pws-key-display { display: inline-block; margin: 8px 8px 0 0; padding: 6px 10px; border-radius: 8px; background: #fff; color: var(--pws-black); font-size: 14px; word-break: break-all; }


/* ---------------------------------------------------------------- 2026-10-21: AI usage and quick reply */
.pws-stat-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin-bottom: 12px; }
.pws-stat { display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; border-radius: 10px; background: #fff; border: 1px solid var(--pws-line); }
.pws-stat-label { font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--pws-grey); }
.pws-stat-value { font-size: 26px; font-weight: 700; color: var(--pws-black); }
.pws-stat-sub { font-size: 12px; color: var(--pws-grey); }
.pws-usage-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.pws-usage-grid h4 { font-size: 15px; margin: 8px 0; }
@media (max-width: 1000px) { .pws-usage-grid { grid-template-columns: minmax(0, 1fr); } }
/* 2026-10-21 - Robust layout of the AI card (stacked controls, full width; seen broken with old cached CSS) */
.pws-ai-card label.pws-ai-title { display: block; }
.pws-ai-card textarea {
	display: block;
	box-sizing: border-box;
	width: 100% !important;
	min-height: 84px;
	margin: 6px 0 10px;
	padding: 8px 10px;
	border: 0;
	border-radius: 8px;
	background: #fff;
	color: var(--pws-ink);
	font: inherit;
	font-size: 13px;
	resize: vertical;
}
.pws-ai-sep { display: block; height: 0; margin: 16px 0 12px; border-top: 1px solid rgba(255, 255, 255, 0.18); }
.pws-ai-card .btn { display: block; width: 100%; }


/* ---------------------------------------------------------------- 2026-10-21: e-mail header & footer settings */
.pws-email-tpl { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.pws-email-tpl textarea { font-family: inherit; font-size: 13px; }
.pws-email-preview { padding: 16px 18px; border: 1px solid var(--pws-line); border-radius: var(--pws-radius); background: #fff; font-size: 13px; line-height: 1.5; color: #444; min-height: 200px; }
.pws-email-note { margin: 12px 0; padding: 10px 12px; border-left: 4px solid var(--pws-accent); background: var(--pws-soft); color: var(--pws-ink); }
@media (max-width: 1000px) { .pws-email-tpl { grid-template-columns: minmax(0, 1fr); } }


/* ---------------------------------------------------------------- 2026-10-21: version badge and release notes */
.pws-version {
	position: relative;
	margin-left: -10px;
	padding: 3px 9px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}
.pws-version:hover { color: #fff !important; border-color: var(--pws-accent); }
.pws-version.is-new::after {
	content: "";
	position: absolute;
	top: -3px;
	right: -3px;
	width: 9px;
	height: 9px;
	border: 2px solid var(--pws-black);
	border-radius: 50%;
	background: var(--pws-accent);
}
.pws-notes { max-width: 900px !important; margin-left: 0 !important; }
.pws-notes-date { margin: 28px 0 12px; font-size: 18px !important; color: var(--pws-grey) !important; }
.pws-note { margin-bottom: 18px; padding: 16px 20px; border: 1px solid var(--pws-line); border-radius: var(--pws-radius); background: var(--pws-surface); }
.pws-note-head { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.pws-note-head h3 { margin: 0; font-size: 17px; }
.pws-note-version { padding: 2px 10px; border-radius: 999px; background: var(--pws-black); color: #fff; font-size: 12px; font-weight: 700; }
.pws-note ul { margin: 0; padding-left: 0; list-style: none; }
.pws-note li { display: flex; align-items: baseline; gap: 8px; padding: 5px 0; }
.pws-note-tag { flex: none; display: inline-block; min-width: 74px; padding: 1px 8px; border-radius: 6px; font-size: 11px; font-weight: 700; text-align: center; text-transform: uppercase; letter-spacing: 0.04em; }
.pws-note-new { background: var(--pws-accent); color: var(--pws-black); }
.pws-note-improved { background: #e8eefc; color: #1e3a8a; }
.pws-note-security { background: var(--pws-black); color: #fff; }
.pws-note-fix { background: #fff1e6; color: #9a3412; }

/* ---------------------------------------------------------------- responsive */
@media (max-width: 1200px) {
	.pws-user-name { display: none; }
	.pws-topbar-search input { width: 160px; }
	.pws-topbar-select { max-width: 170px; }
}
@media (max-width: 1000px) {
	.pws-topbar { flex-wrap: wrap; height: auto; padding: 10px 16px; gap: 10px; }
	.pws-topbar-nav { height: 40px; }
	.pws-topbar-tools { width: 100%; margin-left: 0; }
	.pws-topbar-search { flex: 1; }
	.pws-topbar-search input { width: 100%; }
	.bandProject { top: 0; position: relative !important; margin: 12px 12px 0; }
	.issuesContainer, .issueDetail, .contactDetail {
		float: none !important;
		width: auto !important;
		margin: 0 0 16px !important;
	}
	.fullpage { padding: 16px 12px 32px !important; }
	/* Wide data tables scroll horizontally inside their card instead of overflowing the page */
	.fullpage table.table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.fullpage table.table td { min-width: 90px; }
	.fullpage table.table td:nth-child(5) { min-width: 220px; }
	.pws-pagehead { padding: 16px 12px 0; }
}
