/*
 * Pentest finding (2026-08-31, Web_04): CSP had 'unsafe-inline' in style-src.
 * This file collects every previously-inline <style> block and style="..."
 * attribute from the admin templates so 'unsafe-inline' can be dropped from
 * nginx's Content-Security-Policy. Pure CSS, no server-side data — safe to
 * move verbatim.
 */

/* ── from admin/base_site.html {% block extrastyle %} ── */
.bp .main-sidebar,
.bp .main-sidebar .sidebar {
	background: linear-gradient(180deg, #ed008c 0%, #c4007a 100%) !important;
}
.bp .sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active,
.bp .sidebar-light-primary .nav-sidebar > .nav-item > .nav-link.active {
	background-color: rgba(255, 255, 255, 0.13) !important;
	color: #ffffff !important;
}
.bp .nav-sidebar .nav-link,
.bp .nav-sidebar .nav-link i,
.bp .sidebar .nav-sidebar .nav-link p {
	color: rgba(255,255,255,0.94) !important;
}
.bp .nav-sidebar .nav-link:hover {
	background-color: rgba(255,255,255,0.18) !important;
	color: #ffffff !important;
}
.bp .nav-sidebar .nav-treeview .nav-link {
	color: rgba(255,255,255,0.78) !important;
}
.bp .main-header.navbar {
	background-color: #ffffff !important;
	border-bottom: 4px solid #ed008c !important;
}
.bp .main-header .navbar-nav .nav-link,
.bp .navbar-brand,
.bp .main-header .navbar-text {
	color: #1f2d3d !important;
}
.bp .card-primary:not(.card-outline) > .card-header {
	background: linear-gradient(135deg, #ed008c, #f7a8d4) !important;
	border-bottom: none !important;
	color: #ffffff !important;
}
.bp .card {
	background-color: #ffffff !important;
	border-color: rgba(227, 11, 92, 0.18) !important;
}
a, .bp a {
	color: #ed008c !important;
}
a:hover, .bp a:hover {
	color: #c4007a !important;
}
.btn-primary, .bp .btn-primary,
.btn-success, .bp .btn-success {
	background-color: #ed008c !important;
	border-color: #ed008c !important;
	color: #ffffff !important;
}
.btn-primary:hover, .bp .btn-primary:hover,
.btn-success:hover, .bp .btn-success:hover,
.btn-primary:focus, .bp .btn-primary:focus,
.btn-success:focus, .bp .btn-success:focus,
.btn-primary:active, .bp .btn-primary:active,
.btn-success:active, .bp .btn-success:active {
	background-color: #c4007a !important;
	border-color: #c4007a !important;
}
.btn-primary.focus, .bp .btn-primary.focus,
.btn-success.focus, .bp .btn-success.focus {
	box-shadow: 0 0 0 0.2rem rgba(227, 11, 92, 0.25) !important;
}
.addlink {
	background-color: #ed008c !important;
	border-color: #ed008c !important;
	color: #fff !important;
}
.addlink:hover {
	background-color: #c4007a !important;
	border-color: #c4007a !important;
}
#content h1, #content-title h1 {
	color: #1f2d3d !important;
}
#content h2:not(.inline-group h2):not(fieldset h2):not(.module h2) {
	color: #1f2d3d !important;
	border-bottom: 2px solid #ed008c !important;
}
section.footer { background: #ed008c !important; }
.bp .nav-header {
	background-color: rgba(255, 255, 255, 0.08) !important;
	color: rgba(255,255,255,0.75) !important;
	padding: 0.5rem 1rem !important;
}
.admin-interface .module h2,
.admin-interface .module.filtered h2,
.admin-interface fieldset.module h2 {
	background: linear-gradient(135deg, #ed008c 0%, #c4007a 100%) !important;
	color: #ffffff !important;
	padding: 10px 16px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	margin: 0 !important;
	border-bottom: none !important;
}
fieldset.module {
	border: 1px solid #E5E7EB !important;
	border-radius: 4px !important;
	margin-bottom: 12px !important;
	overflow: hidden;
	padding: 0 !important;
}
fieldset.module .form-row,
fieldset.module .aligned {
	padding: 8px 16px !important;
}
.admin-interface .inline-group h2 {
	background: linear-gradient(135deg, #ed008c 0%, #c4007a 100%) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	padding: 10px 16px !important;
	margin: 0 !important;
	border-bottom: none !important;
}
.inline-group {
	border: 1px solid #E5E7EB !important;
	border-radius: 4px !important;
	margin-bottom: 12px !important;
	overflow: hidden;
}
.tabular.inline-related thead tr th,
.inline-related thead tr th {
	background-color: #ed008c !important;
	color: #ffffff !important;
	font-size: 12px !important;
}
.field-qr_code a[download] {
	display: inline-block !important;
	background-color: #ed008c !important;
	color: #ffffff !important;
	padding: 8px 24px !important;
	border-radius: 4px !important;
	text-decoration: none !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	margin-top: 8px !important;
	min-width: 200px !important;
	text-align: center !important;
}
.field-qr_code a[download]:hover {
	background-color: #c4007a !important;
	color: #ffffff !important;
}
#changelist-filter.gsb-filter-panel {
	display: block !important;
	float: none !important;
	width: 200px !important;
	min-width: 200px !important;
	flex-shrink: 0;
}
.gsb-filter-panel {
	background: #fff;
	border: 1px solid #E5E7EB;
	border-top: 4px solid #ed008c;
	border-radius: 4px;
	padding: 16px 12px;
	margin-top: 8px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.gsb-filter-group { margin-bottom: 14px; }
.gsb-filter-label {
	font-size: 11px;
	font-weight: 600;
	color: #6B7280;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 5px;
}
.gsb-filter-select {
	width: 100%;
	font-size: 13px;
	padding: 5px 8px;
	border: 1px solid #D1D5DB;
	border-radius: 4px;
	color: #374151;
	background: #fff;
	cursor: pointer;
}
.gsb-filter-select:focus {
	border-color: #ed008c;
	outline: none;
	box-shadow: 0 0 0 2px rgba(227,11,92,0.15);
}
.gsb-filter-clear {
	display: block;
	text-align: center;
	font-size: 12px;
	color: #ed008c !important;
	margin-top: 8px;
	text-decoration: none !important;
}
.object-tools .btn-export {
	background-color: #ed008c !important;
	color: #fff !important;
	padding: 6px 16px;
	border-radius: 4px;
	font-size: 13px;
	text-decoration: none !important;
	border: none;
	cursor: pointer;
}
.btn-success.btn-block {
	background-color: #2CBB5A !important;
	border-color: #2CBB5A !important;
	color: #fff !important;
	font-weight: 600 !important;
}
.btn-success.btn-block:hover {
	background-color: #249948 !important;
	border-color: #249948 !important;
}

/* ── from admin/login.html {% block head %} ── */
.login-page {
	min-height: 100vh;
	background: #ffffff;
}
.login-hero {
	background: transparent;
	padding: 0;
}
.login-brand-banner {
	background: #ed008c;
	border-radius: 1rem 1rem 0 0;
	padding: 1.25rem 1.5rem;
	text-align: center;
}
.login-brand-banner img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
.login-brand-banner .brand-title,
.login-brand-banner .brand-subtitle {
	display: none;
}
.login-auth-card {
	background: #ffffff;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 1rem;
	box-shadow: 0 15px 45px rgba(0,0,0,.08);
	overflow: hidden;
}
.login-auth-card .login-brand-banner {
	border-radius: 0;
}
.login-auth-card .card-header {
	background: #ed008c;
	border-bottom: 0;
	padding: 1rem 1.5rem;
}
.login-auth-card .card-header .card-title {
	color: #ffffff;
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0;
}
.login-auth-card .card-body {
	padding: 1.75rem 1.5rem 2rem;
}
.login-auth-card .form-group label {
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.login-auth-card .form-control {
	border-radius: 0.75rem;
	border: 1px solid rgba(0,0,0,.12);
	padding: 0.85rem 0.9rem;
}
.login-auth-card .btn-primary {
	background: #ed008c !important;
	border-color: #ed008c !important;
	width: 100%;
	padding: 0.95rem 1rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(227,11,92,.18);
}
.login-auth-card .btn-primary:hover,
.login-auth-card .btn-primary:focus {
	background: #c4007a !important;
	border-color: #c4007a !important;
}
.login-auth-card .login-footer {
	font-size: 0.95rem;
	text-align: right;
	margin-top: 1rem;
}
.login-auth-card .login-footer a {
	color: #ed008c;
	text-decoration: none;
	font-weight: 600;
}
.login-auth-card .login-footer a:hover {
	text-decoration: underline;
}
.login-auth-card .okta-divider {
	display: flex;
	align-items: center;
	text-align: center;
	color: rgba(0,0,0,.4);
	margin: 1.5rem 0;
	font-size: 0.85rem;
}
.login-auth-card .okta-divider::before,
.login-auth-card .okta-divider::after {
	content: '';
	flex: 1;
	border-bottom: 1px solid rgba(0,0,0,.12);
}
.login-auth-card .okta-divider:not(:empty)::before {
	margin-right: 0.75rem;
}
.login-auth-card .okta-divider:not(:empty)::after {
	margin-left: 0.75rem;
}
.login-auth-card .btn-okta {
	width: 100%;
	padding: 0.95rem 1rem;
	font-weight: 700;
	border-radius: 0.75rem;
	border: 1px solid #ed008c;
	color: #ed008c;
	background: #ffffff;
}
.login-auth-card .btn-okta:hover,
.login-auth-card .btn-okta:focus {
	background: #fdf0f7;
	color: #c4007a;
	border-color: #c4007a;
}
@media (max-width: 767.98px) {
	.login-brand-banner {
		padding: 1.25rem 1rem;
	}
	.login-auth-card {
		width: 100% !important;
	}
}

/* ── from admin/login.html body (style="" attributes) ── */
.gsb-login-main { min-height: 700px; }
.gsb-login-card { border-radius: 0 0 1rem 1rem; }
.gsb-login-error-text { margin: 0; }

/* ── from admin/my_header.html ── */
.gsb-logout-form { margin: 0; }
.gsb-logout-btn { background: none; border: none; width: 100%; text-align: left; cursor: pointer; }

/* ── from tpls/navbar.html ── */
.gsb-navbar-brand-img { opacity: .8; max-height: 40px; border-radius: 6px; }

/* ── from admin/nav_sidebar.html ── */
.gsb-sidebar-pink-bg { background-color: #ed008c !important; }
.gsb-sidebar-brand-link { background-color: #ed008c; padding: 0.5rem 1rem; }
.gsb-sidebar-brand-img { max-height: 48px; width: auto; border-radius: 6px; }

/* ── from admin/index.html & stats.html (chart placeholder height) ── */
.gsb-chart-box { min-height: 250px; }

/* ── from app/templates/errors/*.html ── */
.gsb-error-code { font-size: 10rem; }

/* ── from app/templates/go.html ── */
.gsb-go-section { min-height: 65vh; }
.gsb-go-password-card { width: 100%; max-width: 400px; }

/* ── from accounts/models.py avatar_image_size() ── */
.gsb-avatar-sm { width: 45px; height: 45px; border-radius: 50%; }
.gsb-avatar-lg { width: 150px; height: 150px; border-radius: 50%; }

/* ── from links_manager/models.py show_urls() & admin.py main_url()
   (copy-to-clipboard icon) ── */
.gsb-copy-icon {
	cursor: pointer;
	margin-left: 5px;
	color: #ed008c;
}

/* ── from pages/templates/admin/pages/menu/change_form.html ── */
.column-page, .field-page {
	display: none;
}
