/* AMS V3 Sidebar
 * Scope: sidebar shell, brand/profile card, navigation, and sidebar footer only.
 */
.ams-v3-sidebar{
	position:fixed;
	inset-block:16px;
	inset-inline-start:16px;
	width:var(--ams-v3-sidebar);
	border-radius:var(--ams-v3-radius-xl);
	background:var(--ams-v3-sidebar-bg);
	color:#fff;
	display:flex;
	flex-direction:column;
	padding:18px 16px;
	padding-bottom:18px;
	z-index:1000;
	overflow:hidden;
}
.ams-v3-brand{padding:6px 8px 12px;margin-bottom:4px;}
.ams-v3-brand-logo{min-height:48px;display:flex;align-items:center;gap:12px;justify-content:center;color:#fff;}
.ams-v3-brand-logo.has-company-name{justify-content:flex-start;}
.ams-v3-brand-logo.has-company-logo .ams-v3-logo-full{width:auto;max-width:152px;height:46px;object-fit:contain;border-radius:0;}
.ams-v3-brand-logo img{width:38px;height:38px;object-fit:contain;border-radius:12px;}
.ams-v3-brand-logo .ams-v3-logo-icon{display:none;width:42px;height:42px;object-fit:contain;border-radius:14px;}
.ams-v3-brand-logo strong{font-size:17px;font-weight:500;color:#fff;}
.ams-v3-logo-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--ams-v3-gold),#f4d783);color:#151922;}

.ams-v3-sidebar-profile-card{
	min-height:70px;
	border:1px solid rgba(255,255,255,.12);
	border-radius:18px;
	padding:11px 12px;
	display:flex;
	align-items:center;
	gap:12px;
	color:#fff;
	margin:2px 0 16px;
	background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
}
.ams-v3-sidebar-avatar{position:relative;width:46px;height:46px;flex:0 0 46px;border-radius:16px;display:block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);overflow:visible;}
.ams-v3-sidebar-avatar img{width:100%;height:100%;border-radius:16px;object-fit:cover;display:block;}
.ams-v3-sidebar-avatar em{position:absolute;inset-block-start:-7px;inset-inline-start:-7px;width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:var(--ams-v3-gold);border:2px solid var(--ams-v3-sidebar-bg);font-style:normal;}
.ams-v3-sidebar-avatar em i{font-size:10px;color:#151922!important;}
.ams-v3-sidebar-user-meta{min-width:0;display:grid;gap:3px;}
.ams-v3-sidebar-user-meta b{font-size:14px;line-height:1.25;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ams-v3-sidebar-user-meta small{font-size:11px;line-height:1.2;font-weight:300;color:rgba(255,255,255,.62);}

.ams-v3-nav{display:grid;gap:5px;}
.ams-v3-nav-link{height:44px;border-radius:14px;display:flex;align-items:center;gap:12px;padding:0 14px;color:rgba(255,255,255,.82);transition:.18s ease;font-size:15px;}
.ams-v3-nav-link i{width:22px;text-align:center;color:#fff;font-size:16px;}
.ams-v3-nav-link span{font-weight:300;}
.ams-v3-nav-link:hover{background:rgba(233,216,166,.10);color:#fff;}
.ams-v3-nav-link.is-active{background:rgba(233,216,166,.14);box-shadow:none;color:#E9D8A6;}
.ams-v3-nav-link.is-active i,.ams-v3-nav-link.is-active span{color:#E9D8A6;}
.ams-v3-nav-divider{height:1px!important;background:rgba(255,255,255,.14)!important;margin:12px 8px!important;flex:0 0 auto;}
.ams-v3-nav[aria-label="Settings"]{margin-bottom:14px;}
.ams-v3-sidebar-footer{margin-top:auto!important;padding:18px 8px 28px!important;border-top:0!important;display:block!important;margin-bottom:12px!important;}
.ams-v3-sidebar-signature{display:block;text-align:center;font-size:10px;line-height:1.5;font-weight:300;color:rgba(255,255,255,.5);white-space:normal;}

.ams-v3-workspace-select,.ams-v3-user-card,.ams-v3-logout{display:none!important;}

@media(min-width:901px){
	.ams-v3-root.is-sidebar-collapsed{--ams-v3-sidebar:88px;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar{padding-inline:12px;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-brand-logo .ams-v3-logo-full,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-brand-logo strong,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar-user-meta,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link span,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar-signature{display:none!important;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-brand-logo .ams-v3-logo-icon{display:grid;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-brand-logo img.ams-v3-logo-icon{display:block;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-brand-logo,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link,
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar-profile-card{justify-content:center;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar-profile-card{padding:8px;min-height:62px;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link{padding:0;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-divider{margin-inline:10px!important;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-sidebar-footer{display:none!important;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link.is-active{background:rgba(255,255,255,.06);position:relative;color:#fff;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link.is-active i{color:#fff;}
	.ams-v3-root.is-sidebar-collapsed .ams-v3-nav-link.is-active::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:4px;width:28px;height:3px;border-radius:999px;background:#E9D8A6;}

}
@media(max-width:900px){
	.ams-v3-sidebar{inset-block:0;inset-inline-start:0;border-radius:0;transform:translateX(calc(var(--ams-v3-sidebar) * -1));transition:.22s ease;}
	html[dir="rtl"] .ams-v3-sidebar{transform:translateX(var(--ams-v3-sidebar));}
	.ams-v3-root.is-menu-open .ams-v3-sidebar{transform:translateX(0);}
}
@media(max-width:760px){
	.ams-v3-sidebar-profile-card{min-height:64px;border-radius:16px;}
	.ams-v3-sidebar-avatar{width:42px;height:42px;flex-basis:42px;}
}
@media(max-height:820px){
	.ams-v3-sidebar{padding-top:14px;padding-bottom:14px;}
	.ams-v3-brand{padding-bottom:8px;}
	.ams-v3-sidebar-profile-card{min-height:64px;margin-bottom:12px;}
	.ams-v3-nav-link{height:40px;}
	.ams-v3-nav-divider{margin:8px 8px!important;}
	.ams-v3-nav[aria-label="Settings"]{margin-bottom:10px;}
	.ams-v3-sidebar-signature{font-size:9.5px;line-height:1.35;}
}

.ams-v3-sidebar-divider + .ams-v3-sidebar-divider{display:none!important;}

/* AMS V3 Admin Open Sidebar Footer Offset
 * Scope: admin/moderator open sidebar only.
 * Keeps collapsed sidebar and broker sidebar unchanged.
 */
.ams-v3-root.is-admin-area:not(.is-sidebar-collapsed) .ams-v3-sidebar-footer{
	margin-bottom:42px!important;
	padding-bottom:0!important;
}

/* AMS legacy app sidebar extraction
 * Scope: legacy Moderator/Broker `.ams-sidebar` navigation only.
 * app-shell.css remains loaded as fallback for canvas/header/overlay state.
 */
.ams-sidebar {
	width: 280px;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1200;
	background: rgba(15, 23, 42, 0.96);
	backdrop-filter: blur(20px);
	border-left: 1px solid rgba(255,255,255,0.06);
	padding: 34px 18px 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	overflow-y: auto;
	box-shadow: -18px 0 48px rgba(2, 6, 23, 0.22);
}

html[dir="ltr"] .ams-sidebar {
	right: auto;
	left: 0;
	border-left: none;
	border-right: 1px solid rgba(255,255,255,0.06);
	box-shadow: 18px 0 48px rgba(2, 6, 23, 0.22);
}

.ams-sidebar-header {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	margin-bottom: 10px;
	text-align: center;
}

.ams-brand {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: 0.4px;
	color: #ffffff;
	line-height: 1;
	text-align: center;
}

.ams-brand img {
	display: block;
	margin-inline: auto;
	max-width: 180px;
	max-height: 54px;
	object-fit: contain;
}

.ams-sidebar-close {
	position: absolute;
	inset-inline-end: 0;
	top: 50%;
	display: none !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	color: rgba(255,255,255,0.75);
	cursor: pointer;
	font-size: 20px;
	line-height: 1;
	transform: translateY(-50%) !important;
}

.ams-sidebar-close:hover {
	color: #ffffff;
	transform: translateY(-50%) !important;
}

.ams-nav {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ams-nav a,
.ams-logout-link {
	display: flex;
	align-items: center;
	min-height: 44px;
	gap: 14px;
	padding: 11px 14px;
	border: 1px solid transparent;
	border-radius: 12px;
	color: rgba(255,255,255,0.72);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: all .2s ease;
}

.ams-nav a:hover,
.ams-nav a.ams-active,
.ams-logout-link:hover {
	background: rgba(255,255,255,0.10);
	border-color: rgba(255,255,255,0.08);
	color: #ffffff;
}

.ams-nav a.ams-active {
	background: rgba(214, 184, 106, 0.16);
	border-color: rgba(214, 184, 106, 0.34);
	box-shadow: none;
	color: #d6b86a;
}

html[dir="rtl"] .ams-nav a.ams-active {
	box-shadow: none;
}

.ams-nav-icon {
	width: 22px;
	min-width: 22px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
}

.ams-nav-label {
	flex: 1;
}

.ams-sidebar-footer {
	margin-top: auto;
	margin-bottom: 28px;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,0.05);
	color: rgba(255,255,255,0.38);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.2px;
	text-align: center;
}

.ams-sidebar-footer strong {
	color: rgba(255,255,255,0.58);
	font-weight: 700;
}

.ams-nav-divider {
	display: block;
	height: 1px;
	margin: 10px 16px;
	border-radius: 999px;
	background: rgba(255,255,255,0.08);
}

.ams-nav-divider + .ams-logout-link,
.ams-logout-link {
	margin-top: 0;
}

.ams-logout-link {
	position: relative;
}

.ams-logout-link::before {
	display: none;
}

@media (min-width: 1025px) {
	.ams-sidebar .ams-sidebar-close {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}
}

@media (max-width: 1024px) {
	.ams-sidebar {
		width: 300px;
		transform: translateX(100%);
		transition: transform .25s ease;
	}

	html[dir="ltr"] .ams-sidebar {
		transform: translateX(-100%);
	}

	body.ams-sidebar-open .ams-sidebar {
		transform: translateX(0);
	}

	.ams-sidebar-close {
		display: inline-flex !important;
		font-size: 18px;
	}
}
