/**
 * FocusAgility Theme v1.1 — minimalist MantisBT skin
 *
 * FocusAgility tokens: primary #2563eb, canvas #f8fafc, white surfaces.
 * Overrides ACE Admin + Bootstrap 3 (Mantis 2.28). ACE uses many !important
 * rules (btn-inverse, widget-color-*, login toolbar) — we match that specificity
 * only where required so the skin actually wins.
 *
 * Served from files/css/theme.css — keep css/theme.css in sync.
 */

/* ==========================================================================
   1. Tokens
   ========================================================================== */

:root {
	--fa-primary: #2563eb;
	--fa-primary-hover: #1d4ed8;
	--fa-primary-soft: #eff6ff;
	--fa-bg: #f8fafc;
	--fa-surface: #ffffff;
	--fa-border: #e2e8f0;
	--fa-border-subtle: #f1f5f9;
	--fa-text: #0f172a;
	--fa-text-muted: #64748b;
	--fa-success: #16a34a;
	--fa-warning: #ca8a04;
	--fa-danger: #dc2626;
	--fa-info: #9333ea;
	--fa-radius-sm: 8px;
	--fa-radius-md: 12px;
	--fa-radius-lg: 16px;
	--fa-radius-pill: 9999px;
	--fa-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
	--fa-shadow-md: 0 4px 14px rgba(15, 23, 42, 0.06);
	--fa-font: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
	--fa-navbar-h: 56px;
	--fa-transition: 150ms ease;

	/* Quiet controls — less saturated than brand primary */
	--fa-link: #3b82f6;
	--fa-link-hover: #2563eb;
	--fa-btn-text: #475569;
	--fa-btn-text-hover: #0f172a;
	--fa-btn-border: #e2e8f0;
	--fa-btn-border-hover: #cbd5e1;
	--fa-btn-ghost-bg: transparent;
	--fa-btn-ghost-hover: #f1f5f9;
	--fa-btn-soft-bg: #f8fafc;
	--fa-btn-soft-border: #dbeafe;
	--fa-btn-soft-text: #1d4ed8;
}

/* ==========================================================================
   2. Base canvas
   ========================================================================== */

html.fa-theme,
html.fa-theme body,
body.skin-3,
.login-layout {
	font-family: var(--fa-font) !important;
	font-size: 14px;
	line-height: 1.55;
	color: var(--fa-text);
	background-color: var(--fa-bg) !important;
	-webkit-font-smoothing: antialiased;
}

.skin-3 .main-container:before,
.main-container:before {
	background: var(--fa-bg) !important;
	background-image: none !important;
	box-shadow: none !important;
}

.main-content,
.page-content {
	background: transparent !important;
}

.page-content {
	padding: 20px 24px 40px;
}

.page-header {
	margin: 0 0 1.25rem;
	padding: 0 0 0.75rem;
	border-bottom: 1px solid var(--fa-border);
	background: transparent !important;
}

.page-header h1 {
	font-size: 1.25rem;
	font-weight: 650;
	color: var(--fa-text);
	letter-spacing: -0.015em;
	margin: 0;
}

a {
	color: var(--fa-link);
	transition: color var(--fa-transition);
}

a:hover,
a:focus {
	color: var(--fa-link-hover);
	text-decoration: none;
}

/* ==========================================================================
   3. Navbar — white, minimal, logo via CSS (reliable vs JS-only)
   ========================================================================== */

.skin-3 .navbar,
#navbar.navbar,
.navbar.navbar-default {
	background: var(--fa-surface) !important;
	border: none !important;
	border-bottom: 1px solid var(--fa-border) !important;
	box-shadow: var(--fa-shadow);
	min-height: var(--fa-navbar-h);
}

.navbar .navbar-brand {
	height: var(--fa-navbar-h) !important;
	line-height: var(--fa-navbar-h) !important;
	padding: 0 16px !important;
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	color: var(--fa-text) !important;
	font-weight: 650;
	max-width: 280px;
}

/* CSS logo — works even if theme.js fails to inject */
html.fa-theme .navbar .navbar-brand::before {
	content: "";
	display: inline-block;
	flex-shrink: 0;
	height: 28px;
	width: 168px;
	background-image: var(--fa-logo-url);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
}

/* Hide default window_title text when CSS logo is shown */
html.fa-theme .navbar .navbar-brand > span,
html.fa-theme .navbar .navbar-brand .fa-brand-title {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
}

/* Avoid double logo if JS also injected an <img> */
html.fa-theme .navbar .navbar-brand .fa-brand-logo {
	display: none !important;
}

.ace-nav > li > a,
.navbar .nav > li > a {
	color: var(--fa-text-muted) !important;
	background: transparent !important;
	border-radius: var(--fa-radius-sm);
	transition: background var(--fa-transition), color var(--fa-transition);
}

.ace-nav > li > a:hover,
.ace-nav > li > a:focus,
.ace-nav > li.open > a,
.ace-nav > li.open > a:hover {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text) !important;
}

/* Kill ACE coloured user/menu pills in the top bar */
.ace-nav > li.grey > a,
.ace-nav > li.purple > a,
.ace-nav > li.green > a,
.ace-nav > li.light-blue > a,
.ace-nav > li.light-blue2 > a,
.ace-nav > li.red > a {
	background-color: transparent !important;
}

.navbar-toggle,
.navbar-toggle-img,
#menu-toggler {
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-sm) !important;
	background: var(--fa-surface) !important;
}

#menu-toggler .icon-bar,
.navbar-toggle .icon-bar {
	background-color: var(--fa-text) !important;
}

/* Navbar actions — ghost, not solid blue blocks */
.btn-toolbar .btn-primary.btn-white,
.navbar .btn-primary.btn-white,
.ace-nav .btn-primary.btn-white,
.navbar .btn-primary.btn-sm,
.ace-nav .btn-primary.btn-sm,
.btn-group.btn-corner .btn-primary,
.btn-group.btn-corner .btn-primary.btn-sm {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
	border-radius: var(--fa-radius-sm) !important;
	box-shadow: none !important;
	font-weight: 500 !important;
}

.btn-toolbar .btn-primary.btn-white:hover,
.navbar .btn-primary.btn-white:hover,
.navbar .btn-primary.btn-sm:hover,
.btn-group.btn-corner .btn-primary:hover {
	background-color: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-btn-text-hover) !important;
}

.navbar .btn.btn-white:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-info) {
	background: var(--fa-btn-ghost-bg) !important;
	border-color: var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
}

/* ==========================================================================
   4. Sidebar — white, quiet, rounded active row
   ========================================================================== */

.skin-3 .sidebar,
.sidebar {
	background-color: var(--fa-surface) !important;
	border-right: 1px solid var(--fa-border) !important;
	border-color: var(--fa-border) !important;
	box-shadow: none !important;
}

.skin-3 .nav-list > li,
.nav-list > li {
	border-color: transparent !important;
}

.nav-list > li > a {
	color: var(--fa-text-muted) !important;
	background: transparent !important;
	border-radius: var(--fa-radius-md) !important;
	margin: 2px 10px !important;
	padding: 10px 12px !important;
	height: auto !important;
	line-height: 1.35 !important;
}

.nav-list > li > a:hover {
	background-color: var(--fa-border-subtle) !important;
	color: var(--fa-text) !important;
}

.nav-list > li.active > a,
.nav-list > li.open > a,
.skin-3 .nav-list > li.active > a,
.skin-3 .nav-list > li.active > a:hover {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text) !important;
	font-weight: 600;
}

.nav-list > li.active:after,
.nav-list > li.active > a:after,
.nav-list > li.active > a:before,
.skin-3 .nav-list li.active > a:before,
.skin-3 .nav-list li.active > a:after {
	display: none !important;
	border: none !important;
}

.nav-list > li .submenu {
	background: transparent !important;
	border: none !important;
}

.nav-list > li .submenu > li > a {
	color: var(--fa-text-muted) !important;
	border-radius: var(--fa-radius-sm) !important;
	margin: 1px 10px 1px 18px !important;
	padding: 8px 12px !important;
	background: transparent !important;
}

.nav-list > li .submenu > li > a:hover,
.nav-list > li .submenu > li.active > a {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text) !important;
}

.sidebar-shortcuts,
.sidebar-toggle {
	background: var(--fa-surface) !important;
	border-color: var(--fa-border) !important;
}

.sidebar-shortcuts {
	border-bottom: 1px solid var(--fa-border-subtle) !important;
	padding: 12px 10px !important;
}

/* ==========================================================================
   5. Cards / widgets — FLAT headers (no solid blue bars)
   ========================================================================== */

.widget-box,
.widget-box[class*="widget-color-"] {
	background: var(--fa-surface) !important;
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-lg) !important;
	box-shadow: var(--fa-shadow) !important;
	overflow: hidden;
	margin-bottom: 1.15rem;
}

.widget-box.transparent {
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* Minimalist header: white + bottom rule, not coloured bars */
.widget-header,
.widget-box[class*="widget-color-"] > .widget-header,
.widget-color-blue > .widget-header,
.widget-color-blue2 > .widget-header,
.widget-color-blue3 > .widget-header,
.widget-color-green > .widget-header,
.widget-color-green2 > .widget-header,
.widget-color-red > .widget-header,
.widget-color-orange > .widget-header,
.widget-color-orange2 > .widget-header,
.widget-color-purple > .widget-header,
.widget-color-dark > .widget-header,
.widget-color-grey > .widget-header,
.widget-color-pink > .widget-header {
	background: var(--fa-surface) !important;
	background-image: none !important;
	border: none !important;
	border-bottom: 1px solid var(--fa-border) !important;
	color: var(--fa-text) !important;
	min-height: 48px;
	padding: 12px 16px !important;
	font-weight: 650;
	filter: none !important;
	text-shadow: none !important;
}

.widget-header .widget-title,
.widget-header .widget-title > *,
.widget-box[class*="widget-color-"] > .widget-header .widget-title,
.widget-box[class*="widget-color-"] > .widget-header .widget-title .ace-icon,
.widget-header .ace-icon {
	color: var(--fa-text) !important;
	font-size: 0.95rem !important;
	font-weight: 650 !important;
	text-shadow: none !important;
	line-height: 1.4;
}

.widget-toolbar,
.widget-header .widget-toolbar {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

.widget-toolbar > a,
.widget-toolbar > .widget-menu > a,
.widget-header .widget-toolbar a {
	color: var(--fa-text-muted) !important;
	text-shadow: none !important;
	border-radius: var(--fa-radius-sm);
	padding: 4px 8px !important;
}

.widget-toolbar > a:hover,
.widget-header .widget-toolbar a:hover {
	color: var(--fa-text) !important;
	background: var(--fa-btn-ghost-hover) !important;
}

/* "Ver problemas" — quiet text button, not a blue chip */
.widget-toolbar .badge,
.widget-header .badge {
	background: var(--fa-btn-ghost-hover) !important;
	border: none !important;
	color: var(--fa-text-muted) !important;
	border-radius: var(--fa-radius-pill) !important;
	font-weight: 500 !important;
	box-shadow: none !important;
}

.widget-toolbar .label,
.widget-header .btn,
.widget-toolbar .btn,
.widget-header .btn-primary.btn-white,
.widget-toolbar .btn-primary.btn-white {
	background: transparent !important;
	border: 1px solid var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
	border-radius: var(--fa-radius-sm) !important;
	text-shadow: none !important;
	font-weight: 500 !important;
	box-shadow: none !important;
	padding: 3px 10px !important;
	font-size: 0.78rem !important;
}

.widget-toolbar .btn:hover,
.widget-header .btn:hover,
.widget-toolbar .btn-primary.btn-white:hover {
	background: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
}

.widget-title a,
.widget-title a.white {
	color: var(--fa-text) !important;
	font-weight: 650;
}

.widget-title a:hover {
	color: var(--fa-link-hover) !important;
}

.widget-body {
	background: var(--fa-surface) !important;
}

.widget-main {
	padding: 14px 16px !important;
	background: var(--fa-surface) !important;
}

.widget-toolbox {
	background: var(--fa-border-subtle) !important;
	border-top: 1px solid var(--fa-border) !important;
	padding: 10px 16px !important;
}

.panel,
.panel-default {
	border: 1px solid var(--fa-border);
	border-radius: var(--fa-radius-md);
	box-shadow: var(--fa-shadow);
	background: var(--fa-surface);
}

.panel-heading {
	background: var(--fa-surface) !important;
	border-bottom: 1px solid var(--fa-border);
	font-weight: 600;
	color: var(--fa-text);
}

.well {
	background: var(--fa-border-subtle) !important;
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-md) !important;
	box-shadow: none !important;
}

/* ==========================================================================
   6. Buttons — quiet hierarchy (ghost default, solid only on login)
   ========================================================================== */

.btn {
	border-radius: var(--fa-radius-sm) !important;
	font-weight: 500;
	padding: 6px 12px;
	transition: background var(--fa-transition), border-color var(--fa-transition),
		box-shadow var(--fa-transition), color var(--fa-transition);
	box-shadow: none !important;
	text-shadow: none !important;
}

.btn-sm {
	padding: 5px 10px !important;
	font-size: 0.82rem !important;
}

.btn-xs,
.btn-minier {
	padding: 3px 8px !important;
	font-size: 0.75rem !important;
	border-radius: var(--fa-radius-sm) !important;
}

/* Default: ghost / outline — applies to most Mantis buttons (btn-primary btn-white) */
.btn-primary.btn-white,
.btn.btn-white.btn-primary,
.btn-info.btn-white,
.btn-white.btn-info {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
}

.btn-primary.btn-white:hover,
.btn.btn-white.btn-primary:hover,
.btn-info.btn-white:hover {
	background-color: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
}

/* Standalone primary (navbar, some CTAs) — soft, not saturated fill */
.btn-primary:not(.btn-white),
.btn-primary:focus:not(.btn-white),
.btn-info:not(.btn-white) {
	background-color: var(--fa-btn-soft-bg) !important;
	border: 1px solid var(--fa-btn-soft-border) !important;
	color: var(--fa-btn-soft-text) !important;
}

.btn-primary:not(.btn-white):hover,
.btn-primary:not(.btn-white):active,
.btn-info:not(.btn-white):hover {
	background-color: var(--fa-primary-soft) !important;
	border-color: #bfdbfe !important;
	color: var(--fa-primary-hover) !important;
}

/* Issue view / filter toolbars — keep action rows calm */
.widget-toolbox .btn,
.widget-main .btn-group .btn,
.btn-group .btn-primary.btn-white,
.btn-group .btn-sm.btn-primary.btn-white,
.center .btn-group .btn {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
	font-weight: 500 !important;
}

.widget-toolbox .btn:hover,
.widget-main .btn-group .btn:hover,
.btn-group .btn-primary.btn-white:hover {
	background-color: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
}

/* Active tab in submenu — subtle fill, not solid blue */
.btn-group .btn-primary.btn-white.active,
.btn-group .btn.active {
	background-color: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.04) !important;
}

.btn-success:not(.btn-inverse):not(.btn-white) {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid #bbf7d0 !important;
	color: #15803d !important;
}

.btn-success:not(.btn-inverse):not(.btn-white):hover {
	background-color: #f0fdf4 !important;
}

.btn-warning:not(.btn-white) {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid #fde047 !important;
	color: #a16207 !important;
}

.btn-danger:not(.btn-white),
.btn-danger:focus:not(.btn-white) {
	background-color: var(--fa-btn-ghost-bg) !important;
	border: 1px solid #fecaca !important;
	color: #b91c1c !important;
}

.btn-danger:not(.btn-white):hover {
	background-color: #fef2f2 !important;
	border-color: #fca5a5 !important;
}

.btn-default,
.btn-white:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-warning),
.btn.btn-white {
	background: var(--fa-btn-ghost-bg) !important;
	border: 1px solid var(--fa-btn-border) !important;
	color: var(--fa-btn-text) !important;
}

.btn-default:hover,
.btn.btn-white:hover {
	background: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
}

.btn-link {
	color: var(--fa-link) !important;
	border: none !important;
	background: transparent !important;
}

.btn-link:hover {
	color: var(--fa-link-hover) !important;
}

.btn-round {
	border-radius: var(--fa-radius-sm) !important;
}

/* ==========================================================================
   7. Forms
   ========================================================================== */

.form-control,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="search"],
select,
textarea {
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-sm) !important;
	background-color: var(--fa-surface) !important;
	color: var(--fa-text) !important;
	box-shadow: none !important;
	transition: border-color var(--fa-transition), box-shadow var(--fa-transition);
	padding: 8px 12px;
	min-height: 38px;
	height: auto !important;
}

textarea.form-control,
textarea {
	min-height: 96px;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
	border-color: #93c5fd !important;
	box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
	outline: none !important;
}

label,
.control-label {
	color: var(--fa-text);
	font-weight: 600;
}

.input-group-addon {
	background: var(--fa-border-subtle) !important;
	border-color: var(--fa-border) !important;
	color: var(--fa-text-muted) !important;
}

.input-icon > .ace-icon {
	color: var(--fa-text-muted);
}

/* Dropzone */
.dropzone {
	border: 1px dashed var(--fa-btn-border) !important;
	border-radius: var(--fa-radius-md) !important;
	background: var(--fa-btn-soft-bg) !important;
}

.dropzone .dz-message,
.dropzone .ace-icon {
	color: var(--fa-text-muted) !important;
}

/* ==========================================================================
   8. Tables — airy, light rules
   ========================================================================== */

.table-responsive {
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-md) !important;
	background: var(--fa-surface);
	overflow: hidden;
}

.table {
	margin-bottom: 0;
	background: var(--fa-surface);
}

.table > thead > tr > th,
.table > tbody > tr > th {
	border-bottom: 1px solid var(--fa-border) !important;
	color: var(--fa-text-muted) !important;
	font-weight: 650;
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	padding: 11px 14px !important;
	background: var(--fa-border-subtle) !important;
	vertical-align: middle;
}

.table > tbody > tr > td,
.table > tfoot > tr > td {
	padding: 11px 14px !important;
	border-top: 1px solid var(--fa-border-subtle) !important;
	vertical-align: middle;
	color: var(--fa-text);
	background: transparent !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > td {
	background-color: rgba(248, 250, 252, 0.65) !important;
}

.table-hover > tbody > tr:hover > td,
.table > tbody > tr:hover > td {
	background-color: var(--fa-btn-ghost-hover) !important;
}

.table-bordered,
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td {
	border-color: var(--fa-border-subtle) !important;
}

/* Bug view metadata grid — flatten heavy cell boxes */
.bug-details,
#bug-view,
table.width100 td,
table.width100 th {
	border-color: var(--fa-border-subtle) !important;
}

td.category,
th.category,
.bug-details td.category {
	background: var(--fa-border-subtle) !important;
	color: var(--fa-text-muted) !important;
	font-weight: 600 !important;
	border-color: var(--fa-border-subtle) !important;
}

/* ==========================================================================
   9. Badges / labels — soft pills
   ========================================================================== */

.label,
.badge {
	border-radius: var(--fa-radius-pill) !important;
	font-weight: 600 !important;
	font-size: 0.72rem !important;
	padding: 0.3em 0.75em !important;
	text-shadow: none !important;
	border: 1px solid transparent;
}

.label-info,
.badge-info,
.label-primary,
.badge-primary {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text-muted) !important;
	border-color: var(--fa-btn-border) !important;
}

.label-success,
.badge-success {
	background-color: #f0fdf4 !important;
	color: #15803d !important;
	border-color: #bbf7d0 !important;
}

.label-warning,
.badge-warning {
	background-color: #fefce8 !important;
	color: #a16207 !important;
	border-color: #fde047 !important;
}

.label-danger,
.badge-danger,
.label-important {
	background-color: #fef2f2 !important;
	color: #b91c1c !important;
	border-color: #fecaca !important;
}

.label-default,
.badge-default {
	background-color: #f1f5f9 !important;
	color: #475569 !important;
	border-color: #e2e8f0 !important;
}

/* Tags on issue view */
.tag-link,
a.label[href*="tag"] {
	background: var(--fa-surface) !important;
	border: 1px solid var(--fa-border) !important;
	color: var(--fa-text) !important;
	border-radius: var(--fa-radius-pill) !important;
	padding: 0.25em 0.65em !important;
}

/* ==========================================================================
   10. Alerts
   ========================================================================== */

.alert {
	border-radius: var(--fa-radius-md) !important;
	border: 1px solid var(--fa-border) !important;
	box-shadow: none !important;
	padding: 12px 16px;
}

.alert-info {
	background: var(--fa-btn-soft-bg) !important;
	border-color: var(--fa-btn-soft-border) !important;
	color: #334155 !important;
}

.alert-success {
	background: #f0fdf4 !important;
	border-color: #bbf7d0 !important;
	color: #166534 !important;
}

.alert-warning {
	background: #fefce8 !important;
	border-color: #fde047 !important;
	color: #854d0e !important;
}

.alert-danger,
.alert-error {
	background: #fef2f2 !important;
	border-color: #fecaca !important;
	color: #991b1b !important;
}

/* ==========================================================================
   11. Dropdowns / pagination / tabs
   ========================================================================== */

.dropdown-menu {
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-md) !important;
	box-shadow: var(--fa-shadow-md) !important;
	padding: 6px !important;
	background: var(--fa-surface) !important;
}

.dropdown-menu > li > a {
	border-radius: var(--fa-radius-sm);
	padding: 8px 12px !important;
	color: var(--fa-text) !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > .active > a {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text) !important;
}

.pagination > li > a,
.pagination > li > span {
	border-radius: var(--fa-radius-sm) !important;
	margin: 0 2px;
	border-color: var(--fa-border) !important;
	color: var(--fa-text-muted) !important;
	background: var(--fa-surface) !important;
}

.pagination > .active > a,
.pagination > .active > span {
	background: var(--fa-btn-ghost-hover) !important;
	border-color: var(--fa-btn-border-hover) !important;
	color: var(--fa-text) !important;
	font-weight: 600;
}

.nav-tabs {
	border-bottom: 1px solid var(--fa-border) !important;
}

.nav-tabs > li > a {
	border-radius: var(--fa-radius-sm) var(--fa-radius-sm) 0 0 !important;
	color: var(--fa-text-muted) !important;
	font-weight: 600;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
	color: var(--fa-text) !important;
	border-color: var(--fa-border) var(--fa-border) transparent !important;
	font-weight: 650;
}

.breadcrumb {
	background: transparent !important;
	padding: 6px 0 !important;
}

/* ==========================================================================
   12. Login — brand primary CTA, light footer (not ACE inverse/green)
   ========================================================================== */

.login-layout,
.login-container,
.main-container.login-layout {
	background: var(--fa-bg) !important;
}

.login-layout .main-content {
	background: transparent !important;
}

.login-logo {
	text-align: center;
	padding: 32px 16px 12px;
}

.login-logo img,
.login-logo .fa-brand-logo {
	max-height: 44px;
	width: auto;
	max-width: 240px;
}

.signup-box,
.login-box,
#login-box,
.signup-box.widget-box,
.login-layout .widget-box {
	border: 1px solid var(--fa-border) !important;
	border-radius: var(--fa-radius-lg) !important;
	box-shadow: var(--fa-shadow-md) !important;
	background: var(--fa-surface) !important;
	overflow: hidden;
}

.login-layout .widget-box .widget-main,
#login-box .widget-main {
	padding: 28px 28px 20px !important;
	background: var(--fa-surface) !important;
}

.login-layout .header,
#login-box .header {
	color: var(--fa-text) !important;
	font-weight: 650 !important;
	border: none !important;
	font-size: 1.15rem !important;
}

/* Login submit: class is btn-success btn-inverse → force FA primary */
#login-form .btn,
#login-form .btn-success,
#login-form .btn-inverse,
#login-form .btn-success.btn-inverse,
#login-box .btn-success.btn-inverse,
.signup-box .btn-success.btn-inverse,
.login-layout .btn-success.btn-inverse {
	background-color: var(--fa-primary) !important;
	border-color: var(--fa-primary) !important;
	color: #fff !important;
	border-radius: var(--fa-radius-sm) !important;
	text-shadow: none !important;
	box-shadow: none !important;
	padding: 10px 18px !important;
	font-weight: 650 !important;
}

#login-form .btn:hover,
#login-form .btn-success.btn-inverse:hover,
#login-box .btn-success.btn-inverse:hover {
	background-color: var(--fa-primary-hover) !important;
	border-color: var(--fa-primary-hover) !important;
	color: #fff !important;
}

#login-form .btn:focus,
#login-form .btn-success.btn-inverse:focus {
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.25) !important;
}

/* Footer links bar — light, not green/dark ACE toolbar */
.signup-box .toolbar,
.login-box .toolbar,
#login-box .toolbar,
.forgot-box .toolbar,
.login-layout .widget-box .toolbar {
	background: var(--fa-border-subtle) !important;
	border-top: 1px solid var(--fa-border) !important;
	padding: 14px 20px !important;
}

.signup-box .back-to-login-link,
.login-box .back-to-login-link,
.forgot-box .back-to-login-link,
#login-box .toolbar a,
.signup-box .toolbar a {
	color: var(--fa-link) !important;
	font-weight: 500 !important;
}

.signup-box .back-to-login-link:hover,
#login-box .toolbar a:hover {
	color: var(--fa-primary-hover) !important;
	text-decoration: underline;
}

/* ==========================================================================
   13. Timeline / my-view lists
   ========================================================================== */

.profile-activity,
.profile-activity:first-child {
	border-color: var(--fa-border-subtle) !important;
	padding: 12px 4px !important;
}

.profile-activity .thumbicon,
.profile-activity .ace-icon,
.profile-activity .btn-primary.thumbicon {
	background-color: var(--fa-btn-ghost-hover) !important;
	color: var(--fa-text-muted) !important;
	border: 1px solid var(--fa-btn-border) !important;
}

.profile-activity .time {
	color: var(--fa-text-muted) !important;
}

/* ==========================================================================
   14. Footer / misc
   ========================================================================== */

.footer,
#footer {
	color: var(--fa-text-muted);
	border-top: 1px solid var(--fa-border);
	background: transparent !important;
	padding: 18px 0;
}

#powered-by-mantisbt-logo {
	opacity: 0.45;
}

.infobox {
	border-radius: var(--fa-radius-md) !important;
	border: 1px solid var(--fa-border) !important;
	box-shadow: var(--fa-shadow) !important;
	background: var(--fa-surface) !important;
}

.progress {
	border-radius: var(--fa-radius-pill) !important;
	background: var(--fa-border-subtle) !important;
	box-shadow: none !important;
	height: 8px;
}

.progress-bar {
	background-color: var(--fa-link) !important;
	border-radius: var(--fa-radius-pill);
}

.modal-content {
	border-radius: var(--fa-radius-lg) !important;
	border: 1px solid var(--fa-border) !important;
	box-shadow: var(--fa-shadow-md) !important;
}

.modal-header {
	border-bottom-color: var(--fa-border) !important;
	background: var(--fa-surface) !important;
}

.modal-footer {
	border-top-color: var(--fa-border) !important;
	background: var(--fa-border-subtle) !important;
}

/* Action button row on bug view */
.btn-group .btn,
.widget-toolbox .btn {
	margin: 2px;
}

/* ==========================================================================
   15. Responsive
   ========================================================================== */

@media (max-width: 991px) {
	.page-content {
		padding: 14px 12px 32px;
	}

	html.fa-theme .navbar .navbar-brand::before {
		width: 140px;
		height: 24px;
	}

	.widget-main {
		padding: 12px !important;
	}
}

@media (max-width: 767px) {
	.page-header h1 {
		font-size: 1.1rem;
	}

	html.fa-theme .navbar .navbar-brand::before {
		width: 132px;
	}
}

@media print {
	.navbar,
	.sidebar,
	.footer {
		display: none !important;
	}

	.widget-box {
		box-shadow: none !important;
		border-color: #ccc !important;
	}
}

/* ==========================================================================
   17. My View — custom left/right columns (plugin inject)
   ========================================================================== */

body:has(#fa-left-boxes-source) #timeline,
body:has(#fa-user-boxes-source) #timeline,
body:has(#fa-left-boxes) #timeline,
body:has(#fa-user-boxes) #timeline,
html.fa-my-view #timeline,
html.fa-my-view .widget-box#timeline {
	display: none !important;
}

/* Park sources off-screen until theme.js mounts them */
.fa-dashboard-source {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

#fa-left-boxes,
#fa-user-boxes,
.fa-user-boxes-fallback {
	position: static !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
	display: block;
}

.fa-dash-box .fa-empty-box,
.fa-user-box .fa-empty-box {
	height: 12px;
	border: none !important;
}

