:root{
	--primary:#007BFF;
	--secondary:#6C757D;
	--error-text:#721C24;
	--error-bg:#F8D7DA;
	--error-border:#F5C6CB;
	--success-text:#155724;
	--success-bg:#D4EDDA;
	--success-border:#C3E6CB;
	--text-dark:#212529;
	--text-gray:#495057;
	--primary-hover:#0069D9;
	--secondary-hover:#5A6268;
	--primary-active:#005CBF;
	--secondary-active:#4E555B;
	--bg-form:#FFFFFF;
	--bg-page:#F8F9FA;
}

/* Base admin accents */
:root{
	--jazzmin-primary:#007BFF;
	--jazzmin-secondary:#6C757D;
}

/* Login layout and theming */
body.login{
	background: var(--bg-page);
	position: relative;
	min-height: 100vh;
}

/* Right visual panel */
body.login::after{
	content: "";
	position: fixed;
	top: 32px;
	bottom: 32px;
	right: 32px;
	width: min(615px, 50vw);
	border-radius: 16px;
	background: url('/static/fondo.png') center/cover no-repeat;
	box-shadow: 0 10px 30px rgba(0,0,0,.15);
	z-index: 0;
}

/* Keep the login box on the left */
body.login #content{
	position: relative;
	z-index: 1;
	max-width: 520px;
	margin-left: max(32px, 6vw);
}

/* Card/form styles */
body.login #content .card, body.login .module{
	background: var(--bg-form) !important;
	border: 1px solid rgba(0,0,0,.06);
	box-shadow: 0 10px 30px rgba(0,0,0,.06);
	border-radius: 12px;
}

/* Inputs */
body.login input[type="text"],
body.login input[type="password"],
body.login input[type="email"],
body.login select{
	border:1px solid #e0e3e7;
	border-radius:8px;
	padding:.6rem .8rem;
	color:var(--text-dark);
}

/* Submit button */
body.login .submit-row input[type="submit"],
body.login input[type="submit"].default{
	background: linear-gradient(180deg, var(--primary), var(--primary-hover));
	border:none;
	color:#fff;
	border-radius:8px;
	padding:.6rem 1rem;
}

body.login .submit-row input[type="submit"]:hover,
body.login input[type="submit"].default:hover{
	background: var(--primary-hover);
}

/* Messages */
body.login .errornote,
body.login .errorlist li{
	background: var(--error-bg);
	color: var(--error-text);
	border-color: var(--error-border);
}

/* Header brand tweaks */
#header #branding h1, #site-name{ color: var(--text-dark); }

/* Login logo size */
body.login .login-logo img,
body.login .brand-image,
body.login #site-name img,
body.login .navbar-brand img,
body.login .brand-link img{
	width:30rem !important;
	height:auto !important;
}
/* Jazzmin login body class */
.jazzmin-login-page .login-logo img,
.jazzmin-login-page .brand-image,
.jazzmin-login-page #site-name img,
.jazzmin-login-page .navbar-brand img,
.jazzmin-login-page .brand-link img{
	width:30rem !important;
	height:auto !important;
} 

/* ===== Jazzmin login full layout (mock) ===== */
.jazzmin-login-page{
	background: var(--bg-page);
	/* Bottom-right decorative (kept as background layer) */
	background-image: url('/static/left.png');
	background-repeat: no-repeat;
	background-position: right calc(min(615px, 50vw) + 24px) bottom 8px;
	background-size: 280px auto;
	display:flex;
	align-items:center;
	justify-content:center;
	/* Reserve space for right panel so centering happens on the left area */
	padding-right: calc(min(615px, 50vw) + 56px);
	min-height:100vh;
}

/* Top-left decorative, rotated so straight edge faces up */
.jazzmin-login-page::before{
	content: "";
	position: fixed;
	left: 257px;
	width: 260px;
	height: 260px;
	background: url('/static/left.png') left top / 260px auto no-repeat;
	transform-origin: 0 0;
	transform: rotate(180deg) translateY(75%);
	opacity: 1;
	pointer-events: none;
	z-index: 3;
}

.jazzmin-login-page::after{
	content:"";
	position:fixed;
	top:24px;
	bottom:24px;
	right:24px;
	width:min(615px, 50vw);
	border-radius:18px;
	background:url('/static/fondo.png') center/cover no-repeat;
	box-shadow:0 18px 50px rgba(15, 23, 42, .25);
	z-index:0;
}

.jazzmin-login-page .login-box{
	position:relative;
	z-index:2;
	width:460px;
	margin:0;
}

.jazzmin-login-page .card, .jazzmin-login-page .module{
	background:var(--bg-form) !important;
	border:1px solid rgba(0,0,0,.06);
	box-shadow:0 14px 40px rgba(0,0,0,.10);
	border-radius:14px;
}

/* Fine tune input heights and spacing */
.jazzmin-login-page .input-group .form-control{ height:44px; }
.jazzmin-login-page .input-group .input-group-text{ height:44px; }
.jazzmin-login-page .card-body{ padding: 22px 22px 24px; }

/* Button look closer to mock */
.jazzmin-login-page .btn-primary, 
.jazzmin-login-page .submit-row input[type="submit"],
.jazzmin-login-page input[type="submit"].default{
	background: linear-gradient(180deg, #2e6cf6, #1160e6);
	border:none;
	color:#fff;
	border-radius:8px;
	padding:.7rem 1rem;
	box-shadow: 0 6px 16px rgba(17,96,230,.35);
}

.jazzmin-login-page .btn-primary:hover,
.jazzmin-login-page .submit-row input[type="submit"]:hover,
.jazzmin-login-page input[type="submit"].default:hover{
	background: linear-gradient(180deg, #2a65ea, #0e52c4);
}

.jazzmin-login-page .errornote, .jazzmin-login-page .errorlist li{
	background: var(--error-bg);
	color: var(--error-text);
	border-color: var(--error-border);
}

.jazzmin-login-page .login-box .login-logo h1{
	margin-bottom:.75rem;
}

.jazzmin-login-page .login-box .login-box-msg{
	color:var(--text-gray);
	font-weight:600;
	text-align:left;
} 

/* Align and unify object-tools buttons (Export / Add) */
.object-tools{ display:flex; align-items:center; gap:10px; }
.object-tools .btn, .object-tools a.addlink{ padding:6px 12px; border-radius:6px; font-size:14px; line-height:1.2; }
.object-tools .btn i{ margin-right:6px; }

/* Force Add button to outline-primary style (works for Django default and Jazzmin) */
.object-tools .btn-success,
.object-tools a.addlink{
	background-color: transparent !important;
	background-image: none !important;
	color: #2563eb !important;
	border: 1px solid #2563eb !important;
	box-shadow: none !important;
	text-shadow: none !important;
}
.object-tools .btn-success i{ color:#2563eb !important; }
.object-tools a.addlink:before{ filter: hue-rotate(180deg) saturate(0) brightness(0.4); }

.object-tools .btn-success:hover,
.object-tools a.addlink:hover{ background:#e8efff !important; } 

/* Fix list bullet appearing near object-tools */
.object-tools, .object-tools ul, .object-tools li{ list-style: none !important; }
.object-tools li::marker{ content: '' !important; }

/* Normalize sizes and style for Add button to match Export */
.object-tools a.addlink, .object-tools .btn-success{
	display:inline-flex !important;
	align-items:center !important;
	gap:6px !important;
	height:auto !important;
	padding:6px 12px !important;
	border-radius:6px !important;
	font-size:14px !important;
	line-height:1.2 !important;
	background-color:transparent !important;
	background-image:none !important;
	border:1px solid #2563eb !important;
	color:#2563eb !important;
	box-shadow:none !important;
	text-shadow:none !important;
}
.object-tools a.addlink:hover, .object-tools .btn-success:hover{ background:#e8efff !important; } 

/* Strong reset for object-tools list to remove bullets/indents */
ul.object-tools{ list-style:none !important; margin:0 !important; padding:0 !important; }
ul.object-tools>li{ list-style:none !important; margin:0 10px 0 0 !important; padding:0 !important; }
ul.object-tools>li::before{ content:none !important; }

/* Force Add button same outline style inside changelist toolbar */
#changelist-form ul.object-tools .btn-success,
#changelist-form ul.object-tools a.addlink{
	background:transparent !important;
	background-image:none !important;
	color:#2563eb !important;
	border:1px solid #2563eb !important;
	box-shadow:none !important;
	text-shadow:none !important;
} 

/* Global restyle: make .btn-success look like outline-primary (matches Export) */
.btn-success{
	background: transparent !important;
	background-image: none !important;
	color: #2563eb !important;
	border: 1px solid #2563eb !important;
	box-shadow: none !important;
	text-shadow: none !important;
}
.btn-success:hover{ background:#e8efff !important; color:#1e3a8a !important; }
.btn-success i{ color:#2563eb !important; } 

/* Normalize Export and Add buttons to exact same size/style */
.btn-outline-primary, .btn-success{
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	border-radius: 6px !important;
	background: transparent !important;
	background-image: none !important;
	color: #007BFF !important;
	border: 1px solid #007BFF !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-decoration: none !important;
	height: auto !important;
	min-height: auto !important;
}

.btn-outline-primary:hover, .btn-success:hover{
	background: #007BFF !important;
	color: #ffffff !important;
	border-color: #007BFF !important;
}

.btn-outline-primary i, .btn-success i{
	color: inherit !important;
	margin-right: 6px !important;
} 

/* ===== Dashboard Add and Change buttons - make them identical ===== */
.dashboard .module .btn-group {
	display: flex !important;
	gap: 8px !important;
}

.dashboard .module .addlink,
.dashboard .module .changelink,
.dashboard .module .btn-info {
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	font-size: 14px !important;
	border-radius: 6px !important;
	background: transparent !important;
	color: #007BFF !important;
	border: 1px solid #007BFF !important;
	text-decoration: none !important;
	font-weight: 500 !important;
}

.dashboard .module .addlink:hover,
.dashboard .module .changelink:hover,
.dashboard .module .btn-info:hover {
	background: #007BFF !important;
	color: #ffffff !important;
	border-color: #007BFF !important;
}

/* Override specific Bootstrap button classes */
.dashboard .module .btn.btn-xs.btn-success.addlink,
.dashboard .module .btn.btn-xs.btn-info.changelink {
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	font-size: 14px !important;
	border-radius: 6px !important;
	background: transparent !important;
	color: #007BFF !important;
	border: 1px solid #007BFF !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	box-shadow: none !important;
	text-shadow: none !important;
}

.dashboard .module .btn.btn-xs.btn-success.addlink:hover,
.dashboard .module .btn.btn-xs.btn-info.changelink:hover {
	background: #007BFF !important;
	color: #ffffff !important;
	border-color: #007BFF !important;
}

/* Ultra specific selectors to force override */
.dashboard .module .btn-group .btn.btn-xs.btn-success,
.dashboard .module .btn-group .btn.btn-xs.btn-info,
.dashboard .module .float-right .btn.btn-xs.btn-success,
.dashboard .module .float-right .btn.btn-xs.btn-info {
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	border-radius: 6px !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	color: #007BFF !important;
	border: 1px solid #007BFF !important;
	border-color: #007BFF !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	min-width: auto !important;
	height: auto !important;
}

.dashboard .module .btn-group .btn.btn-xs.btn-success:hover,
.dashboard .module .btn-group .btn.btn-xs.btn-info:hover,
.dashboard .module .float-right .btn.btn-xs.btn-success:hover,
.dashboard .module .float-right .btn.btn-xs.btn-info:hover {
	background: #007BFF !important;
	background-color: #007BFF !important;
	color: #ffffff !important;
	border-color: #007BFF !important;
}

/* Maximum specificity - nuclear option */
.dashboard .module div.btn-group.float-right a.btn.btn-xs.btn-success.addlink,
.dashboard .module div.btn-group.float-right a.btn.btn-xs.btn-info.changelink,
a[href*="/add/"].btn.btn-xs.btn-success.addlink,
a[href*="/admin/"].btn.btn-xs.btn-info.changelink {
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	border-radius: 6px !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	color: #007BFF !important;
	border: 1px solid #007BFF !important;
	border-color: #007BFF !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	min-width: auto !important;
	height: auto !important;
}

.dashboard .module div.btn-group.float-right a.btn.btn-xs.btn-success.addlink:hover,
.dashboard .module div.btn-group.float-right a.btn.btn-xs.btn-info.changelink:hover,
a[href*="/add/"].btn.btn-xs.btn-success.addlink:hover,
a[href*="/admin/"].btn.btn-xs.btn-info.changelink:hover {
	background: #007BFF !important;
	background-color: #007BFF !important;
	color: #ffffff !important;
	border-color: #007BFF !important;
} 

/* ===== Recent actions - Change green circles to blue ===== */
.recent-actions .timeline-badge,
.recent-actions .timeline-badge.bg-success,
.content .recent-actions .timeline-badge,
.content .recent-actions .timeline-badge.bg-success {
	background-color: #007BFF !important;
	border-color: #007BFF !important;
}

/* Target the circles more specifically */
.recent-actions .timeline > li > .timeline-badge,
.recent-actions .timeline > li > .timeline-badge.bg-success {
	background-color: #007BFF !important;
	border-color: #007BFF !important;
}

/* Global override for .bg-success to blue ===== */
.bg-success{
	background-color:#007BFF !important;
	background:#007BFF !important;
	color:#ffffff !important;
	border-color:#007BFF !important;
}

/* Force ALL green elements to blue - nuclear option */
.bg-success,
*[class*="bg-success"],
*[class*="success"],
.timeline-badge,
.timeline-badge.bg-success,
.btn-success,
.badge-success,
span[style*="#28a745"],
div[style*="#28a745"],
*[style*="background-color: #28a745"],
*[style*="background: #28a745"] {
	background-color: #007BFF !important;
	background: #007BFF !important;
	border-color: #007BFF !important;
} 
