/* Sileo PMS — Auth pages (login / forgot password) styles */

body.sileo-auth-body { overflow-x: hidden; }
.sileo-auth-wrapper { min-height: 100vh; display: flex; }

/* ---------- Left marketing panel ---------- */
.sileo-auth-left {
	flex: 0 0 44%; max-width: 44%; position: relative; overflow: hidden;
	display: flex; flex-direction: column; padding: 40px 48px 32px;
	background: linear-gradient(160deg, #FFF6EE 0%, #FFEADC 40%, #FFFFFF 100%);
}
.sileo-auth-left::before {
	content: ""; position: absolute; top: -130px; right: -170px; width: 420px; height: 420px;
	border-radius: 50%; background: rgba(242, 101, 34, .08);
}
.sileo-auth-left::after {
	content: ""; position: absolute; bottom: -170px; left: -130px; width: 380px; height: 380px;
	border-radius: 50%; background: rgba(242, 101, 34, .06);
}
.sileo-auth-left > * { position: relative; z-index: 1; }
.sileo-auth-logo img { max-width: 220px; }
.sileo-auth-hero { margin-top: 36px; }
.sileo-auth-hero h1 { font-size: 40px; font-weight: 800; line-height: 1.15; color: var(--sileo-ink); margin-bottom: 4px; }
.sileo-auth-hero h2 { font-size: 26px; font-weight: 600; color: var(--sileo-ink-soft); margin-bottom: 14px; }
.sileo-auth-hero .accent-rule { width: 56px; height: 4px; background: var(--sileo-accent); border-radius: 2px; margin-bottom: 18px; }
.sileo-auth-hero p { color: var(--sileo-ink-soft); font-size: 15px; max-width: 380px; }

.sileo-auth-features { display: flex; gap: 12px; margin: 28px 0 8px; }
.sileo-auth-feature { flex: 1; background: #fff; border-radius: 14px; padding: 16px 10px; text-align: center; box-shadow: var(--sileo-shadow-sm); }
.sileo-auth-feature .icon { width: 42px; height: 42px; border-radius: 50%; background: var(--sileo-accent-soft); color: var(--sileo-accent); display: flex; align-items: center; justify-content: center; font-size: 19px; margin: 0 auto 10px; }
.sileo-auth-feature h6 { font-size: 12.5px; font-weight: 700; color: var(--sileo-ink); margin-bottom: 2px; }
.sileo-auth-feature p { font-size: 11px; color: var(--sileo-ink-faint); margin: 0; }

.sileo-auth-illustration { margin-top: auto; position: relative; text-align: center; padding-top: 20px; }
.sileo-auth-illustration img { max-width: 260px; opacity: .85; }
.sileo-auth-float-card {
	position: absolute; top: 6px; left: 50%; transform: translateX(-108px);
	background: #fff; border-radius: 12px; box-shadow: var(--sileo-shadow-md);
	padding: 10px 12px; width: 150px; text-align: left; z-index: 2;
}
.sileo-auth-float-card .chk { width: 26px; height: 26px; border-radius: 50%; background: var(--sileo-success); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 14px; margin-bottom: 8px; }
.sileo-auth-float-card .bars span { display: block; height: 5px; border-radius: 3px; background: var(--sileo-border-soft); margin-bottom: 5px; }
.sileo-auth-float-card .bars span:nth-child(1) { width: 90%; }
.sileo-auth-float-card .bars span:nth-child(2) { width: 65%; }
.sileo-auth-float-card .mini-chart { display: flex; align-items: flex-end; gap: 4px; height: 26px; margin-top: 8px; }
.sileo-auth-float-card .mini-chart span { flex: 1; background: var(--sileo-accent); border-radius: 2px; opacity: .85; }
.sileo-auth-float-card .mini-chart span:nth-child(1) { height: 40%; }
.sileo-auth-float-card .mini-chart span:nth-child(2) { height: 70%; }
.sileo-auth-float-card .mini-chart span:nth-child(3) { height: 55%; }
.sileo-auth-float-card .mini-chart span:nth-child(4) { height: 90%; }

/* ---------- Right form panel ---------- */
.sileo-auth-right { flex: 1; display: flex; align-items: center; justify-content: center; position: relative; padding: 40px 24px; }
.sileo-theme-toggle { position: absolute; top: 28px; right: 40px; display: flex; gap: 2px; background: #fff; border: 1px solid var(--sileo-border); border-radius: 999px; padding: 5px; box-shadow: var(--sileo-shadow-xs); }
.sileo-theme-toggle button { width: 30px; height: 30px; border: none; border-radius: 50%; background: transparent; color: var(--sileo-ink-faint); display: flex; align-items: center; justify-content: center; }
.sileo-theme-toggle button.active { background: var(--sileo-accent-soft); color: var(--sileo-accent); }

.sileo-auth-form { width: 100%; max-width: 400px; }
.sileo-auth-form h2 { font-size: 30px; font-weight: 800; margin-bottom: 4px; }
.sileo-auth-form .sub { color: var(--sileo-ink-soft); margin-bottom: 26px; }
.sileo-auth-form label { font-size: 13px; font-weight: 600; color: var(--sileo-ink); margin-bottom: 6px; display: block; }
.sileo-input-icon { position: relative; margin-bottom: 18px; }
.sileo-input-icon > i:first-child { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--sileo-ink-faint); font-size: 16px; }
.sileo-input-icon input { padding-left: 42px; height: 48px; border-radius: 10px; border: 1px solid var(--sileo-border); }
.sileo-input-icon input:focus { border-color: var(--sileo-accent); box-shadow: 0 0 0 3px var(--sileo-accent-soft); }
.sileo-input-icon .toggle-password { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--sileo-ink-faint); cursor: pointer; }

.sileo-btn-signin {
	background: linear-gradient(135deg, var(--sileo-accent), var(--sileo-accent-dark)); border: none; color: #fff;
	font-weight: 700; font-size: 15px; border-radius: 10px; height: 50px; width: 100%;
	display: flex; align-items: center; justify-content: center; gap: 8px;
}
.sileo-btn-signin:hover { color: #fff; filter: brightness(1.05); }

.sileo-auth-divider { display: flex; align-items: center; gap: 12px; margin: 22px 0 18px; color: var(--sileo-ink-faint); font-size: 12px; }
.sileo-auth-divider::before, .sileo-auth-divider::after { content: ""; flex: 1; height: 1px; background: var(--sileo-border); }
.sileo-role-label { font-size: 13px; font-weight: 600; color: var(--sileo-ink); margin-bottom: 12px; }

.sileo-role-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.sileo-role-card {
	border: 1px solid var(--sileo-border); border-radius: 12px; padding: 16px 8px;
	display: flex; flex-direction: column; align-items: center; text-decoration: none;
	transition: all .15s ease; background: #fff;
}
.sileo-role-card:hover { border-color: var(--sileo-accent); box-shadow: var(--sileo-shadow-sm); transform: translateY(-2px); }
.sileo-role-card .avatar { width: 42px; height: 42px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; font-size: 18px; }
.sileo-role-card span.label { font-size: 12.5px; font-weight: 600; color: var(--sileo-ink); }

.sileo-auth-footer { margin-top: 30px; text-align: center; font-size: 12px; color: var(--sileo-ink-faint); display: flex; align-items: center; justify-content: center; gap: 6px; }

@media (max-width: 991px) {
	.sileo-auth-left { display: none; }
}
