/**
 * KAZZYLEN SMC — Frontend Switcher Styles v1.1.0
 * @package KAZZYLEN_SMC
 */
:root {
	--kzl-f-primary:  #7f54b3;
	--kzl-f-hover:    #6b47a0;
	--kzl-f-bg:       #ffffff;
	--kzl-f-bg-hover: #f5f0fc;
	--kzl-f-border:   #e4e4e7;
	--kzl-f-text:     #1e1e2e;
	--kzl-f-muted:    #71717a;
	--kzl-f-radius:   8px;
	--kzl-f-shadow:   0 8px 28px rgba(0,0,0,.14);
	--kzl-f-z:        9999;
}

.kazzylen-smc-switcher *, .kazzylen-smc-switcher *::before, .kazzylen-smc-switcher *::after { box-sizing: border-box; }
.kazzylen-smc-switcher { display: inline-block; position: relative; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }

/* ── Option links ───────────────────────────────────────────────────────── */
.kazzylen-smc-option-link {
	display: flex; align-items: center; gap: 7px;
	padding: 8px 14px; color: var(--kzl-f-text);
	text-decoration: none; width: 100%; transition: background .12s;
}
.kazzylen-smc-option-link:hover { background: var(--kzl-f-bg-hover); }
.kazzylen-smc-option.is-active .kazzylen-smc-option-link {
	background: #f3eefb; color: var(--kzl-f-primary); font-weight: 700;
}
.kazzylen-smc-symbol { font-weight: 700; color: var(--kzl-f-primary); min-width: 20px; }
.kazzylen-smc-code   { font-weight: 600; font-size: .9em; }
.kazzylen-smc-name   { color: var(--kzl-f-muted); font-size: .85em; }
.kazzylen-smc-check  { margin-left: auto; color: var(--kzl-f-primary); }

/* Lists */
.kazzylen-smc-list, .kazzylen-smc-float-list {
	list-style: none; margin: 0; padding: 5px 0;
	background: var(--kzl-f-bg); border: 1px solid var(--kzl-f-border);
	border-radius: var(--kzl-f-radius); box-shadow: var(--kzl-f-shadow);
	z-index: var(--kzl-f-z); min-width: 180px;
	max-height: 300px; overflow-y: auto;
}

/* ── Dropdown ───────────────────────────────────────────────────────────── */
.kazzylen-smc-dropdown { position: relative; }
.kazzylen-smc-trigger {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 8px 13px;
	background: var(--kzl-f-bg); border: 1.5px solid var(--kzl-f-border);
	border-radius: var(--kzl-f-radius); color: var(--kzl-f-text);
	font-size: .9em; font-family: inherit; cursor: pointer;
	transition: border-color .15s, box-shadow .15s; white-space: nowrap;
}
.kazzylen-smc-trigger:hover, .kazzylen-smc-trigger:focus {
	border-color: var(--kzl-f-primary);
	box-shadow: 0 0 0 3px rgba(127,84,179,.15); outline: none;
}
.kazzylen-smc-arrow { font-size: .7em; color: var(--kzl-f-muted); transition: transform .18s; }
.kazzylen-smc-trigger[aria-expanded="true"] .kazzylen-smc-arrow { transform: rotate(180deg); }
.kazzylen-smc-dropdown .kazzylen-smc-list {
	position: absolute; top: calc(100% + 4px); left: 0;
	animation: kzlDropIn .14s ease;
}

/* ── Floating ───────────────────────────────────────────────────────────── */
.kazzylen-smc-floating { position: fixed; bottom: 24px; right: 24px; z-index: var(--kzl-f-z); }
.kazzylen-smc-fab {
	display: flex; align-items: center; justify-content: center; gap: 3px;
	width: 54px; height: 54px; border-radius: 50%;
	background: var(--kzl-f-primary); color: #fff; border: none; cursor: pointer;
	font-size: .85em; font-weight: 700; font-family: inherit;
	box-shadow: 0 4px 18px rgba(127,84,179,.45);
	transition: background .18s, transform .18s, box-shadow .18s;
}
.kazzylen-smc-fab:hover, .kazzylen-smc-fab:focus {
	background: var(--kzl-f-hover); transform: scale(1.07); outline: none;
}
.kazzylen-smc-fab-symbol { font-size: 1em; }
.kazzylen-smc-fab-code   { font-size: .76em; }
.kazzylen-smc-floating .kazzylen-smc-float-list {
	position: absolute; bottom: calc(100% + 8px); right: 0;
	animation: kzlFloatIn .14s ease;
}

@keyframes kzlDropIn  { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:translateY(0); } }
@keyframes kzlFloatIn { from { opacity:0; transform:translateY(6px) scale(.97); } to { opacity:1; transform:translateY(0) scale(1); } }

[dir="rtl"] .kazzylen-smc-dropdown .kazzylen-smc-list { left:auto; right:0; }
[dir="rtl"] .kazzylen-smc-floating { right:auto; left:24px; }
[dir="rtl"] .kazzylen-smc-floating .kazzylen-smc-float-list { right:auto; left:0; }
@media (prefers-reduced-motion:reduce) { .kazzylen-smc-list, .kazzylen-smc-float-list { animation:none; } }
