:root {
	--mobile-bg: #f4f6fb;
	--mobile-card: #ffffff;
	--mobile-text: #172033;
	--mobile-muted: #7b8496;
	--mobile-line: rgba(20, 30, 50, .08);
	--mobile-primary: #174c9f;
	--mobile-primary-dark: #123d80;
}

body.mobile-dark {
	--mobile-bg: #07101f;
	--mobile-card: #101a2b;
	--mobile-text: #f4f7fb;
	--mobile-muted: #a9b3c7;
	--mobile-line: rgba(255, 255, 255, .08);
	--mobile-primary: #4f8cff;
	--mobile-primary-dark: #2f6fd8;
}

.mobile-body {
	margin: 0;
	min-height: 100vh;
	background: var(--mobile-bg);
	color: var(--mobile-text);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.mobile-auth-body {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.mobile-theme-toggle {
	position: fixed;
	top: 14px;
	right: 14px;
	z-index: 10;
}

.btn-theme {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 1px solid var(--mobile-line);
	background: var(--mobile-card);
	color: var(--mobile-text);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}

.mobile-brand-hero {
	width: 100%;
	text-align: center;
	padding-top: 34px;
}

.mobile-brand-hero img {
	width: 118px;
	height: 118px;
	object-fit: contain;
	border-radius: 26px;
	box-shadow: 0 12px 34px rgba(0, 0, 0, .08);
	background: #fff;
}

.mobile-page-shell {
	width: 100%;
	max-width: 480px;
	padding: 24px 18px;
}

.mobile-auth-wrap {
	width: 100%;
}

.mobile-card {
	background: var(--mobile-card);
	border: 1px solid var(--mobile-line);
	border-radius: 28px;
	box-shadow: 0 18px 45px rgba(0, 0, 0, .08);
	overflow: hidden;
}

.mobile-card-body {
	padding: 28px 22px;
}

.mobile-auth-header {
	margin-bottom: 24px;
}

.mobile-auth-icon {
	width: 58px;
	height: 58px;
	border-radius: 20px;
	background: rgba(23, 76, 159, .10);
	color: var(--mobile-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	margin-bottom: 14px;
}

.mobile-page-title {
	font-size: 28px;
	font-weight: 800;
	margin: 0;
	color: var(--mobile-text);
}

.mobile-page-subtitle {
	font-size: 15px;
	color: var(--mobile-muted);
	margin-top: 5px;
}

.form-label {
	font-weight: 700;
	font-size: 14px;
	color: var(--mobile-text);
}

.form-control {
	border-radius: 16px;
	border-color: var(--mobile-line);
	background: var(--mobile-card);
	color: var(--mobile-text);
}

.form-control:focus {
	border-color: var(--mobile-primary);
	box-shadow: 0 0 0 .2rem rgba(23, 76, 159, .14);
}

.mobile-login-btn {
	border-radius: 18px;
	background: var(--mobile-primary);
	border-color: var(--mobile-primary);
	font-weight: 800;
}

.mobile-login-btn:hover {
	background: var(--mobile-primary-dark);
	border-color: var(--mobile-primary-dark);
}

.mobile-alert {
	border-radius: 16px;
	font-size: 14px;
}


.mobile-app-body {
	min-height: 100vh;
	background: #161b1c;
	color: var(--mobile-text);
}

.mobile-brand-hero-small {
	padding-top: 18px;
}

.mobile-brand-hero-small img {
	width: 82px;
	height: 82px;
	border-radius: 22px;
}

.mobile-page-shell-app {
	min-height: calc(100vh - 115px);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-bottom: 14px;
}

.mobile-app-content {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mobile-main-grid {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 34px 28px;
	padding: 18px 24px 30px;
}

.mobile-main-action {
	position: relative;
	text-decoration: none;
	text-align: center;
	color: #5fb7ff;
	font-weight: 800;
}

.mobile-main-action-icon {
	height: 74px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 52px;
	color: #ffffff;
	text-shadow: 0 3px 0 #0b8bdd, 0 10px 22px rgba(0, 0, 0, .35);
}

.mobile-main-action-text {
	margin-top: 8px;
	font-size: 16px;
	color: #59b8ff;
}

.mobile-main-action-badge {
	position: absolute;
	top: -6px;
	right: 22px;
	min-width: 24px;
	height: 24px;
	padding: 0 7px;
	border-radius: 999px;
	background: #ff3b30;
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .35);
}

.mobile-bottom-bar {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 10px 18px 0;
	color: #7e8b95;
}

.mobile-bottom-col {
	width: 33.333%;
	display: flex;
	align-items: center;
}

.mobile-bottom-col-left {
	justify-content: flex-start;
}

.mobile-bottom-col-center {
	justify-content: center;
	font-size: 12px;
	color: #7e8b95;
}

.mobile-bottom-col-right {
	justify-content: flex-end;
}

.mobile-bottom-link {
	color: #7e8b95;
	text-decoration: none;
	font-size: 22px;
}

.mobile-bottom-link:hover {
	color: #59b8ff;
}

/* =========================================================
   FILALPHA - MODULE PAGES
   classi dedicate per non rompere login/home
========================================================= */

.filalpha-module-shell {
	min-height: 100vh;
	max-width: 430px;
	margin: 0 auto;
	padding: 16px 22px 28px;
	border: 1px solid rgba(255, 255, 255, .12);
	background: #161b1c;
	box-shadow: 0 14px 35px rgba(0, 0, 0, .35);
}

.filalpha-module-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 54px;
}

.filalpha-module-logo-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.filalpha-module-logo-link img {
	width: 38px;
	height: 38px;
	object-fit: contain;
	border-radius: 9px;
}

.filalpha-module-back-link {
	color: #079cff;
	font-size: 30px;
	text-decoration: none;
	line-height: 1;
}

.filalpha-module-back-link:hover {
	color: #5fc0ff;
}

.filalpha-module-content {
	min-height: calc(100vh - 110px);
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 82px;
}

.filalpha-sub-grid {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 62px 30px;
	padding: 0 18px;
}

.filalpha-module-shell .mobile-main-action {
	position: relative;
	text-decoration: none;
	text-align: center;
	color: #5fb7ff;
	font-weight: 800;
}

.filalpha-module-shell .mobile-main-action-icon {
	position: relative;
	height: 78px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 56px;
	color: #ffffff;
	text-shadow: 0 3px 0 #0b8bdd, 0 10px 22px rgba(0, 0, 0, .35);
}

.filalpha-module-shell .mobile-main-action-text {
	margin-top: 8px;
	font-size: 15px;
	line-height: 1.25;
	color: #59b8ff;
}

.filalpha-module-shell .mobile-main-action-badge {
	position: absolute;
	top: 0;
	right: 18px;
	min-width: 24px;
	height: 24px;
	padding: 0 7px;
	border-radius: 999px;
	background: #31a56e;
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .35);
}

.filalpha-filum-icon {
	color: #079cff;
}

/* =========================================================
   FILALPHA - STARS SEARCH MENU
========================================================= */

.filalpha-module-title {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 16px;
	padding: 0 4px;
	color: #ffffff;
}

.filalpha-module-title-icon {
	width: 46px;
	height: 46px;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(7, 156, 255, .18);
	color: #59b8ff;
	font-size: 24px;
}

.filalpha-module-title h1 {
	margin: 0;
	font-size: 22px;
	font-weight: 900;
	color: #ffffff;
}

.filalpha-module-title p {
	margin: 2px 0 0;
	font-size: 13px;
	color: #7e8b95;
}

.filalpha-module-content-top {
	display: block;
	min-height: auto;
	padding-top: 34px;
}

.filalpha-sub-grid-compact {
	gap: 34px 24px;
	padding: 0 14px;
}

.filalpha-search-panels {
	margin-top: 34px;
	padding: 0 4px 28px;
}

.filalpha-search-box {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 22px;
	padding: 18px;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .20);
}

.filalpha-search-box .form-label {
	color: #ffffff;
}

.filalpha-search-box .form-control {
	background: rgba(255, 255, 255, .94);
	color: #172033;
	border: 0;
}

.filalpha-search-btn {
	border-radius: 16px;
	font-weight: 800;
	background: #079cff;
	border-color: #079cff;
}


/* =========================================================
   FILALPHA - STARS LIST CARD
========================================================= */

.filalpha-list-wrap {
	padding-top: 24px;
	padding-bottom: 30px;
}

.filalpha-star-card {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 22px;
	padding: 16px;
	margin-bottom: 16px;
	color: #ffffff;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .22);
}

.filalpha-star-card-top {
	display: flex;
	align-items: center;
	gap: 12px;
}

.filalpha-star-card-icon {
	width: 42px;
	height: 42px;
	border-radius: 15px;
	background: rgba(7, 156, 255, .16);
	color: #59b8ff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 21px;
}

.filalpha-star-card-meta {
	flex: 1;
	min-width: 0;
}

.filalpha-star-card-user {
	font-size: 15px;
	font-weight: 900;
	color: #ffffff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.filalpha-star-card-date {
	margin-top: 2px;
	font-size: 12px;
	color: #8c99a5;
}

.filalpha-star-card-type {
	margin-top: 12px;
	display: inline-block;
	font-size: 12px;
	font-weight: 800;
	color: #59b8ff;
	background: rgba(7, 156, 255, .12);
	border-radius: 999px;
	padding: 5px 10px;
}

.filalpha-star-card-text {
	margin-top: 12px;
	font-size: 14px;
	line-height: 1.45;
	color: #e8edf2;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.filalpha-star-card-filebox {
	margin-top: 12px;
}

.filalpha-card-file {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	max-width: 100%;
	color: #59b8ff;
	text-decoration: none;
	font-size: 13px;
	font-weight: 800;
	word-break: break-all;
}

.filalpha-card-audio {
	width: 100%;
	margin-top: 6px;
}

.filalpha-star-card-actions {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin-top: 16px;
}

.filalpha-star-action {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border-radius: 14px;
	padding: 10px 6px;
	text-decoration: none;
	font-size: 12px;
	font-weight: 900;
	color: #ffffff;
}

.filalpha-star-action-ok {
	background: #198754;
}

.filalpha-star-action-ko {
	background: #dc3545;
}

.filalpha-star-action-wait {
	background: #6c757d;
}

.filalpha-empty-card {
	margin-top: 30px;
	padding: 32px 18px;
	border-radius: 22px;
	text-align: center;
	color: #8c99a5;
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .10);
}

.filalpha-empty-card i {
	font-size: 34px;
	margin-bottom: 10px;
	color: #59b8ff;
}

.filalpha-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 0 4px;
	color: #ffffff;
}

.filalpha-pagination-side {
	width: 70px;
	display: flex;
	align-items: center;
}

.filalpha-pagination-side:last-child {
	justify-content: flex-end;
}

.filalpha-pagination-center {
	font-size: 13px;
	font-weight: 900;
	color: #8c99a5;
}

.filalpha-page-btn {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(7, 156, 255, .16);
	color: #59b8ff;
	text-decoration: none;
	font-size: 18px;
}


.filalpha-star-card-actions-2 {
	grid-template-columns: repeat(2, 1fr);
}

.filalpha-card-file-multi {
	position: relative;
	width: fit-content;
}

.filalpha-card-file-multi b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	margin-left: 4px;
	border-radius: 8px;
	background: #5399cf;
	color: #fff;
	font-size: 12px;
}

.filalpha-file-modal-content {
	background: #161b1c;
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, .15);
	border-radius: 20px;
}

.filalpha-file-modal-content .modal-header {
	border-bottom: 1px solid rgba(255, 255, 255, .10);
}

.filalpha-file-modal-content .btn-close {
	filter: invert(1);
}

.filalpha-modal-img {
	width: 100%;
	border-radius: 14px;
}

.filalpha-modal-pdf {
	width: 100%;
	height: 70vh;
	border: 0;
	border-radius: 14px;
	background: #ffffff;
}

.filalpha-files-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 18px;
	padding-top: 26px;
}

.filalpha-file-tile {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 20px;
	padding: 12px;
	text-align: center;
	color: #ffffff;
}

.filalpha-file-thumb {
	width: 100%;
	height: 120px;
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(7, 156, 255, .10);
	text-decoration: none;
}

.filalpha-file-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.filalpha-file-thumb-icon {
	color: #59b8ff;
	font-size: 42px;
}

.filalpha-file-name {
	margin-top: 10px;
	font-size: 12px;
	font-weight: 800;
	color: #cbd6df;
	word-break: break-word;
}

.filalpha-modal-body {
	position: relative;
}

.filalpha-modal-close {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 10;

	width: 38px;
	height: 38px;
	border-radius: 50%;

	display: flex;
	align-items: center;
	justify-content: center;

	background: rgba(0,0,0,0.65);
	color: #ffffff;
	font-size: 18px;

	text-decoration: none;
	box-shadow: 0 4px 12px rgba(0,0,0,.5);
}

.filalpha-modal-close:hover {
	background: rgba(0,0,0,0.85);
}

.filalpha-star-card-actions-1 {
	grid-template-columns: 1fr;
}

.filalpha-star-action-edit {
	background: #0d6efd;
}

.filalpha-star-action-archive {
	background: #6c757d;
}

.filalpha-shared-pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-left: 6px;
	padding: 2px 7px;
	border-radius: 999px;
	background: rgba(7, 156, 255, .16);
	color: #59b8ff;
	font-size: 11px;
	font-weight: 900;
	vertical-align: middle;
}


/* =========================================================
   TEAM AJAX SEARCH
========================================================= */

.filalpha-ajax-search-wrap {
	position: relative;
	width: 100%;
}

.filalpha-search-box .filalpha-ajax-search-input {
	width: 100% !important;
	height: 52px !important;
	border-radius: 16px !important;
	border: 0 !important;
	background: #ffffff !important;
	color: #172033 !important;
	padding: 0 16px !important;
	font-size: 15px !important;
	outline: none !important;
	box-shadow: none !important;
}

.filalpha-search-box .filalpha-ajax-search-input:focus {
	border: 0 !important;
	background: #ffffff !important;
	color: #172033 !important;
	box-shadow: 0 0 0 .2rem rgba(7, 156, 255, .20) !important;
}

.filalpha-ajax-results {
	position: absolute;
	top: 58px;
	left: 0;
	right: 0;
	z-index: 9999;
	background: #ffffff !important;
	border-radius: 16px;
	border: 1px solid rgba(0, 0, 0, .08);
	max-height: 260px;
	overflow-y: auto;
	display: none;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .45);
}

.filalpha-ajax-result-item {
	padding: 12px 14px;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
	cursor: pointer;
	color: #172033 !important;
	background: #ffffff !important;
	font-size: 14px;
	line-height: 1.4;
	font-weight: 700;
	word-break: break-word;
}

.filalpha-ajax-result-item:last-child {
	border-bottom: 0;
}

.filalpha-ajax-result-item:hover {
	background: #eaf5ff !important;
	color: #172033 !important;
}

.filalpha-selected-users {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.filalpha-selected-user {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #079cff;
	color: #ffffff;
	padding: 8px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 800;
	max-width: 100%;
	border: 0;
}

.filalpha-selected-user-text {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 220px;
}

.filalpha-selected-user-remove {
	border: 0;
	background: transparent;
	color: #ffffff;
	cursor: pointer;
	font-size: 14px;
	opacity: .9;
	padding: 0;
	line-height: 1;
}

.filalpha-selected-user-remove:hover {
	opacity: 1;
	color: #ffdddd;
}


/* =========================================================
   FILALPHA - STANDARD FORM STYLE
========================================================= */

.filalpha-form-box {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 22px;
	padding: 18px;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .20);
}

.filalpha-form-box .form-label {
	color: #ffffff;
	font-weight: 800;
	font-size: 14px;
	margin-bottom: 8px;
}

.filalpha-form-box .form-control,
.filalpha-form-box .form-select {
	background: #ffffff !important;
	color: #172033 !important;
	border: 0 !important;
	border-radius: 16px !important;
	font-size: 15px !important;
	box-shadow: none !important;
}

.filalpha-form-box textarea.form-control {
	min-height: 130px;
	resize: vertical;
}

.filalpha-form-actions {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin-top: 18px;
}

.filalpha-form-btn {
	border-radius: 16px;
	font-weight: 900;
	padding: 12px 10px;
}

.filalpha-form-btn-cancel {
	background: #6c757d;
	border-color: #6c757d;
	color: #ffffff;
}

.filalpha-form-btn-save {
	background: #079cff;
	border-color: #079cff;
	color: #ffffff;
}

/* =========================================================
   FILALPHA - STAR FORM OPTIONS
========================================================= */

.filalpha-star-icons {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin: 16px 0 18px;
}

.filalpha-star-icon-btn {
	height: 48px;
	border-radius: 16px;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .12);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 18px;
	text-decoration: none;
}

.filalpha-star-icon-btn:hover,
.filalpha-star-icon-btn:focus {
	background: rgba(7, 156, 255, .22);
	color: #ffffff;
	text-decoration: none;
}

.filalpha-star-icon-btn i.active {
	color: #6ee7b7;
}

.filalpha-star-box {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 18px;
	padding: 14px;
	margin-bottom: 14px;
}

.filalpha-star-box label {
	display: block;
	font-size: 13px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 8px;
}

.filalpha-star-box .form-control {
	background: #ffffff !important;
	color: #172033 !important;
	border: 0 !important;
	border-radius: 16px !important;
	min-height: 48px;
	margin-bottom: 10px;
}

.filalpha-search-results {
	margin-top: 8px;
	background: #ffffff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 24px rgba(0,0,0,.28);
}

.filalpha-search-result-user,
.filalpha-search-result-single,
.filalpha-search-empty {
	padding: 11px 12px;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
	color: #172033;
	background: #ffffff;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	word-break: break-word;
}

.filalpha-search-result-user:hover,
.filalpha-search-result-single:hover {
	background: #eaf5ff;
}

.filalpha-selected-list {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.filalpha-selected-user {
	background: #079cff;
	color: #ffffff;
	border-radius: 999px;
	padding: 8px 12px;
	font-size: 13px;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	max-width: 100%;
}

.filalpha-selected-user button {
	border: 0;
	background: transparent;
	color: #ffffff;
	font-size: 13px;
	padding: 0;
}

.filalpha-file-input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}

.filalpha-attach-label {
	height: 48px;
	border-radius: 16px;
	background: #079cff;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 18px;
}

.filalpha-file-selected {
	margin-top: 8px;
	padding: 10px 12px;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 14px;
	color: #ffffff;
	font-size: 12px;
	word-break: break-word;
}

.filalpha-file-selected span {
	color: #cbd6df;
}

#details {
	color: #cbd6df;
	font-size: 12px;
	margin-top: 8px;
	word-break: break-word;
}


.filalpha-search-box #errorContainer {
	display: none;
	margin-top: 18px;
	background: rgba(255, 193, 7, .08);
	border: 1px solid rgba(255, 193, 7, .18);
	border-radius: 14px;
	padding: 12px 14px;
	color: #ffffff;
}

.filalpha-search-box #errorContainer p {
	margin: 0 0 6px 0;
	font-size: 14px;
}

.filalpha-search-box #errorContainer ul {
	margin: 0;
	padding-left: 18px;
}

.filalpha-search-box #errorContainer li {
	font-size: 13px;
	margin: 3px 0;
}

.filalpha-search-box .form-control.error {
	border: 2px solid rgba(255, 193, 7, .75) !important;
}

/* =========================================================
   FILALPHA - EVENTS FORM SECTIONS
========================================================= */

.form-group {
	margin-bottom: 14px;
}

.filalpha-search-box label {
	font-size: 14px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 8px;
	display: block;
}

.events-form-check {
	display: flex !important;
	align-items: center;
	gap: 6px;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 800;
}

.events-form-help {
	font-size: 12px;
	color: #8c99a5;
	margin-top: 6px;
}

.events-filter-row {
	display: flex;
	gap: 8px;
	align-items: center;
}

.events-filter-row .form-control {
	flex: 1;
}

.events-clear-filter-btn {
	width: 48px;
	height: 48px;
	border-radius: 16px;
	border: 0;
	background: #6c757d;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.filalpha-section-trigger {
	width: 100%;
	border: 1px solid rgba(255, 255, 255, .12);
	background: rgba(255, 255, 255, .08);
	color: #ffffff;
	border-radius: 16px;
	padding: 12px;
	margin-top: 10px;
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 900;
	text-align: left;
}

.filalpha-section-trigger i {
	color: #59b8ff;
	min-width: 18px;
}

.filalpha-section-trigger.open i {
	color: #6ee7b7;
}

.filalpha-section {
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition: max-height .28s ease, opacity .22s ease;
}

.filalpha-section.open {
	max-height: 2600px;
	opacity: 1;
}

.filalpha-section-inner {
	padding-top: 10px;
}

.filalpha-section-body {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 18px;
	padding: 14px;
	margin-bottom: 14px;
}

/* =========================================================
   CALENDAR FILTER SUMMARY
========================================================= */

.filalpha-calendar-filter-summary {
	margin: 0 0 16px 0;
	padding: 14px;
	border-radius: 20px;
	background: rgba(7,156,255,.10);
	border: 1px solid rgba(7,156,255,.22);
	box-shadow: 0 10px 24px rgba(0,0,0,.18);
}

.filalpha-calendar-filter-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
}

.filalpha-calendar-filter-title i {
	color: #59b8ff;
}

.filalpha-calendar-filter-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.filalpha-search-tag {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 12px;
	border-radius: 999px;
	background: #16384d;
	border: 1px solid rgba(89,184,255,.28);
	color: #9ed8ff;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.filalpha-search-tag i {
	font-size: 12px;
	color: #59b8ff;
}

/* =========================================================
   SHARED EVENT HISTORY
========================================================= */

.filalpha-shared-cron-box {
	margin-top: 12px;
	padding: 12px 14px;
	border-radius: 16px;
	background: rgba(255,255,255,.045);
	border: 1px solid rgba(255,255,255,.08);
}

.filalpha-shared-cron-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
	color: #9ed8ff;
	font-size: 12px;
	font-weight: 900;
}

.filalpha-shared-cron-title i {
	color: #59b8ff;
}

.filalpha-shared-cron-text {
	color: #cbd6df;
	font-size: 12px;
	line-height: 1.45;
	white-space: normal;
}

/* =========================================================
   FILALPHA - CONTACTS FORM EXTRA
========================================================= */

.filalpha-hidden-file {
	display: none;
}

.filalpha-file-label {
	height: 48px;
	border-radius: 16px;
	background: #079cff;
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 18px;
	padding: 0 18px;
}

.filalpha-file-label:hover {
	background: #0b8bdd;
	color: #ffffff;
}

.filalpha-file-details {
	margin-top: 8px;
	padding: 10px 12px;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 14px;
	color: #cbd6df;
	font-size: 12px;
	word-break: break-word;
}

.filalpha-current-avatar img {
	width: 90px;
	height: 90px;
	object-fit: cover;
	border-radius: 18px;
	border: 1px solid rgba(255, 255, 255, .12);
	background: rgba(255, 255, 255, .08);
}

.filalpha-form-error {
	color: #ffd166;
	font-size: 12px;
	font-weight: 800;
	margin-top: 6px;
	display: block;
}

.filalpha-star-card-actions button.filalpha-star-action {
	width: 100%;
	border: 0;
}

.filalpha-check-response {
	margin-top: 8px;
	font-size: 13px;
	font-weight: 800;
}

.filalpha-check-response .text-danger {
	color: #ff6b6b !important;
}

.filalpha-check-response .text-success {
	color: #6ee7b7 !important;
}

.filalpha-check-response .text-info {
	color: #9ed8ff !important;
}

.filalpha-star-action.disabled,
.filalpha-star-action:disabled {
	opacity: .55;
	cursor: not-allowed;
}


.filalpha-geo-active {
	color: #31d07f !important;
	text-shadow: 0 3px 0 #16824d, 0 10px 22px rgba(0, 0, 0, .35) !important;
}

/* =========================================================
   CONTACTS LIST EMAIL FIX
========================================================= */

.filalpha-contact-email,
.filalpha-contact-email a {
	display: block !important;
	max-width: 100% !important;
	white-space: normal !important;
	line-height: 1.25 !important;
}



.filalpha-attach-disabled {
	background: #6c757d !important;
	opacity: .45;
	cursor: not-allowed !important;
}

.events-file-help {
	margin-top: 8px;
	color: #cbd6df;
	font-size: 12px;
	font-weight: 700;
}

.filalpha-attach-label-center {
	width: 100%;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 14px 0 !important;
	border-radius: 16px !important;
}

.filalpha-attach-label-center i {
	font-size: 28px;
	line-height: 1;
}


/* =========================================================
  Close combos
========================================================= */

.filalpha-search-close {
	padding: 10px 14px;
	cursor: pointer;
	font-weight: 700;
	text-align: center;
	color: #ffffff;
	background: #0d6efd;
	border-bottom: 1px solid rgba(255,255,255,.10);
	border-radius: 8px 8px 0 0;
}

.filalpha-search-close:hover {
	background: #0b5ed7;
	color: #ffffff;
}



.filalpha-filum-subtitle {
	color: rgba(243, 239, 231, .68);
	font-size: 13px;
	line-height: 1.35;
	margin-top: 2px;
	word-break: break-word;
}

.filalpha-star-card-no-actions {
	padding-bottom: 16px;
}

.filalpha-filum-star-fulltext {
	white-space: normal;
	word-break: break-word;
}

.filalpha-filum-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.filalpha-filum-card {
	background: rgba(16, 23, 34, .72);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 18px;
	padding: 14px;
}

.filalpha-filum-card-top {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.filalpha-filum-card-icon {
	width: 38px;
	height: 38px;
	border-radius: 14px;
	background: rgba(0, 153, 255, .12);
	color: #0099ff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	flex: 0 0 38px;
}

.filalpha-filum-card-body {
	min-width: 0;
	flex: 1;
}

.filalpha-filum-card-title {
	display: block;
	color: #f3efe7;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;
	word-break: break-word;
}

.filalpha-filum-card-title:hover {
	color: #0099ff;
}

.filalpha-filum-card-meta {
	margin-top: 5px;
	font-size: 12px;
	color: rgba(243, 239, 231, .55);
}

.filalpha-filum-card-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 14px;
}

.filalpha-filum-card-actions-one {
	grid-template-columns: 1fr;
}

.filalpha-filum-action {
	border-radius: 14px;
	background: rgba(0, 153, 255, .10);
	border: 1px solid rgba(0, 153, 255, .16);
	color: #0099ff;
	padding: 10px 12px;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
}

.filalpha-filum-action:hover {
	background: rgba(0, 153, 255, .18);
	color: #4db8ff;
}



.filalpha-flash {
	animation: flashIn .35s ease;
}

@keyframes flashIn {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.filalpha-flash {
	margin: 8px auto 18px;
	padding: 12px 16px;
	width: 100%;
	max-width: 340px;
	background: linear-gradient(135deg, #6fda98, #4fc37d);
	color: #0d2b1a;
	border-radius: 18px;
	text-align: center;
	font-size: 14px;
	font-weight: 800;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.filalpha-flash i {
	color: #0f7a3a;
	font-size: 16px;
}





/* =========================================================
   FILALPHA - BULK PANEL
========================================================= */

.filalpha-bulk-select {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 5;
}

.filalpha-bulk-check {
	width: 24px;
	height: 24px;
	accent-color: #6ee7b7;
}

.filalpha-star-card {
	position: relative;
}

#filalphaBulkPanel {
	position: sticky;
	bottom: 0;
	z-index: 20;
	background: #101722;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 18px 18px 0 0;
	padding: 14px;
	margin-top: 18px;
	display: none;
	box-shadow: 0 -10px 30px rgba(0, 0, 0, .35);
}

#filalphaBulkPanel .filalpha-bulk-panel-title {
	color: #fff;
	font-weight: 700;
	margin-bottom: 10px;
}

#filalphaBulkPanel .filalpha-bulk-count {
	color: #6ee7b7;
}

#filalphaBulkPanel #bulkSearchInput {
	background: #ffffff !important;
	color: #172033 !important;
	border: 0 !important;
	border-radius: 16px !important;
}

#filalphaBulkPanel #bulkSearchInput::placeholder {
	color: #7b8496 !important;
}

#filalphaBulkPanel textarea,
#filalphaBulkPanel .form-control {
	background: #ffffff !important;
	color: #172033 !important;
}

#filalphaBulkPanel #bulkSearchResults {
	margin-top: 8px;
	background: #ffffff !important;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .35);
}

#filalphaBulkPanel .filalpha-search-result-single,
#filalphaBulkPanel .filalpha-search-empty {
	background: #ffffff !important;
	color: #172033 !important;
	padding: 12px 14px;
	font-size: 14px;
	font-weight: 800;
	border-bottom: 1px solid rgba(0, 0, 0, .08) !important;
	cursor: pointer;
}

#filalphaBulkPanel .filalpha-search-result-single:hover {
	background: #eaf5ff !important;
	color: #172033 !important;
}

#filalphaBulkPanel .filalpha-selected-list {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

#filalphaBulkPanel .filalpha-selected-user {
	background: #142238;
	border: 1px solid rgba(255, 255, 255, .12);
	color: #fff;
	border-radius: 20px;
	padding: 6px 10px;
	font-size: 12px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

#filalphaBulkPanel .filalpha-selected-user button {
	border: 0;
	background: none;
	color: #fff;
	font-size: 13px;
	padding: 0;
}

#filalphaBulkPanel .btn {
	border-radius: 16px;
	font-weight: 800;
	padding: 12px 10px;
}

#filalphaBulkPanel .form-label {
	color: #ffffff !important;
	font-weight: 900;
}

#filalphaBulkPanel .form-control:focus {
	border-color: #59b8ff !important;
	box-shadow: 0 0 0 .2rem rgba(89,184,255,.18) !important;
}


.mobile-main-action-img {
	width: 82px;
	height: 82px;
	object-fit: contain;
	display: block;
	margin: 0 auto;
}



/* =========================================================
   FILALPHA V2 - LIGHT / DARK FINAL
   normale = bianco
   mobile-dark = scuro
========================================================= */

/* =========================
   LIGHT DEFAULT
========================= */

html,
body.mobile-body,
body.mobile-app-body {
	background: #ffffff !important;
	color: #172033 !important;
}

body:not(.mobile-dark) .mobile-page-shell,
body:not(.mobile-dark) .mobile-page-shell-app,
body:not(.mobile-dark) .mobile-app-content,
body:not(.mobile-dark) .filalpha-module-shell,
body:not(.mobile-dark) .filalpha-list-wrap {
	background: #ffffff !important;
	color: #172033 !important;
	box-shadow: none !important;
}

body:not(.mobile-dark) .filalpha-module-shell {
	border: 0 !important;
}

/* box / card / pannelli tutti bianchi */
body:not(.mobile-dark) .mobile-card,
body:not(.mobile-dark) .filalpha-search-box,
body:not(.mobile-dark) .filalpha-form-box,
body:not(.mobile-dark) .filalpha-star-card,
body:not(.mobile-dark) .filalpha-empty-card,
body:not(.mobile-dark) .filalpha-star-box,
body:not(.mobile-dark) .filalpha-section-body,
body:not(.mobile-dark) .filalpha-section-trigger,
body:not(.mobile-dark) .filalpha-calendar-filter-summary,
body:not(.mobile-dark) .filalpha-shared-cron-box,
body:not(.mobile-dark) .filalpha-filum-card,
body:not(.mobile-dark) .filalpha-file-tile,
body:not(.mobile-dark) .filalpha-file-selected,
body:not(.mobile-dark) .filalpha-file-details,
body:not(.mobile-dark) #filalphaBulkPanel,
body:not(.mobile-dark) .filalpha-file-modal-content {
	background: #ffffff !important;
	color: #172033 !important;
	border: 1px solid rgba(20, 30, 50, .10) !important;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .06) !important;
}

/* testi chiari che prima erano bianchi */
body:not(.mobile-dark) .filalpha-module-title,
body:not(.mobile-dark) .filalpha-module-title h1,
body:not(.mobile-dark) .filalpha-search-box .form-label,
body:not(.mobile-dark) .filalpha-form-box .form-label,
body:not(.mobile-dark) .filalpha-search-box label,
body:not(.mobile-dark) .filalpha-star-box label,
body:not(.mobile-dark) .events-form-check,
body:not(.mobile-dark) .filalpha-star-card-user,
body:not(.mobile-dark) .filalpha-star-card-text,
body:not(.mobile-dark) .filalpha-filum-card-title,
body:not(.mobile-dark) .filalpha-file-tile,
body:not(.mobile-dark) .filalpha-pagination,
body:not(.mobile-dark) #filalphaBulkPanel .filalpha-bulk-panel-title,
body:not(.mobile-dark) #filalphaBulkPanel .form-label {
	color: #172033 !important;
}

/* testi secondari */
body:not(.mobile-dark) .filalpha-module-title p,
body:not(.mobile-dark) .filalpha-star-card-date,
body:not(.mobile-dark) .filalpha-filum-card-meta,
body:not(.mobile-dark) .filalpha-file-name,
body:not(.mobile-dark) .events-form-help,
body:not(.mobile-dark) .events-file-help,
body:not(.mobile-dark) #details,
body:not(.mobile-dark) .filalpha-shared-cron-text,
body:not(.mobile-dark) .mobile-bottom-bar,
body:not(.mobile-dark) .mobile-bottom-col-center,
body:not(.mobile-dark) .mobile-bottom-link {
	color: #7b8496 !important;
}

/* blu resta blu */
body:not(.mobile-dark) .mobile-main-action,
body:not(.mobile-dark) .mobile-main-action-text,
body:not(.mobile-dark) .filalpha-module-shell .mobile-main-action,
body:not(.mobile-dark) .filalpha-module-shell .mobile-main-action-text,
body:not(.mobile-dark) .filalpha-module-back-link,
body:not(.mobile-dark) .filalpha-card-file,
body:not(.mobile-dark) .filalpha-star-card-type,
body:not(.mobile-dark) .filalpha-page-btn,
body:not(.mobile-dark) .filalpha-filum-action {
	color: #174c9f !important;
}

/* icone fontawesome senza ombra in chiaro */
body:not(.mobile-dark) .mobile-main-action-icon,
body:not(.mobile-dark) .filalpha-module-shell .mobile-main-action-icon {
	color: #174c9f !important;
	text-shadow: none !important;
}

/* pill / icone box */
body:not(.mobile-dark) .filalpha-module-title-icon,
body:not(.mobile-dark) .filalpha-star-card-icon,
body:not(.mobile-dark) .filalpha-filum-card-icon,
body:not(.mobile-dark) .filalpha-page-btn,
body:not(.mobile-dark) .filalpha-star-card-type,
body:not(.mobile-dark) .filalpha-shared-pill,
body:not(.mobile-dark) .filalpha-search-tag {
	background: rgba(23, 76, 159, .10) !important;
	color: #174c9f !important;
	border-color: rgba(23, 76, 159, .14) !important;
}

/* input sempre bianchi in light */
body:not(.mobile-dark) .form-control,
body:not(.mobile-dark) .form-select,
body:not(.mobile-dark) textarea,
body:not(.mobile-dark) .filalpha-search-box .form-control,
body:not(.mobile-dark) .filalpha-form-box .form-control,
body:not(.mobile-dark) .filalpha-form-box .form-select,
body:not(.mobile-dark) .filalpha-star-box .form-control,
body:not(.mobile-dark) #filalphaBulkPanel .form-control,
body:not(.mobile-dark) #filalphaBulkPanel textarea {
	background: #ffffff !important;
	color: #172033 !important;
	border: 1px solid rgba(20, 30, 50, .12) !important;
	box-shadow: none !important;
}

/* dropdown risultati */
body:not(.mobile-dark) .filalpha-ajax-results,
body:not(.mobile-dark) .filalpha-ajax-result-item,
body:not(.mobile-dark) .filalpha-search-results,
body:not(.mobile-dark) .filalpha-search-result-user,
body:not(.mobile-dark) .filalpha-search-result-single,
body:not(.mobile-dark) .filalpha-search-empty,
body:not(.mobile-dark) #filalphaBulkPanel #bulkSearchResults,
body:not(.mobile-dark) #filalphaBulkPanel .filalpha-search-result-single,
body:not(.mobile-dark) #filalphaBulkPanel .filalpha-search-empty {
	background: #ffffff !important;
	color: #172033 !important;
	border-color: rgba(20, 30, 50, .10) !important;
}

/* modal light */
body:not(.mobile-dark) .filalpha-file-modal-content .modal-header {
	border-bottom: 1px solid rgba(20, 30, 50, .10) !important;
}

body:not(.mobile-dark) .filalpha-file-modal-content .btn-close {
	filter: none !important;
}

/* logo rimane pulito */
body:not(.mobile-dark) .mobile-brand-hero img {
	background: #ffffff !important;
}

/* =========================
   DARK MODE
========================= */

body.mobile-dark,
body.mobile-dark.mobile-body,
body.mobile-dark.mobile-app-body {
	background: #161b1c !important;
	color: #f4f7fb !important;
}

body.mobile-dark .mobile-page-shell,
body.mobile-dark .mobile-page-shell-app,
body.mobile-dark .mobile-app-content,
body.mobile-dark .filalpha-module-shell,
body.mobile-dark .filalpha-list-wrap {
	background: #161b1c !important;
	color: #f4f7fb !important;
}

body.mobile-dark .filalpha-module-shell {
	border: 1px solid rgba(255, 255, 255, .12) !important;
	box-shadow: 0 14px 35px rgba(0, 0, 0, .35) !important;
}

/* box / card / pannelli scuri */
body.mobile-dark .mobile-card,
body.mobile-dark .filalpha-search-box,
body.mobile-dark .filalpha-form-box,
body.mobile-dark .filalpha-star-card,
body.mobile-dark .filalpha-empty-card,
body.mobile-dark .filalpha-star-box,
body.mobile-dark .filalpha-section-body,
body.mobile-dark .filalpha-section-trigger,
body.mobile-dark .filalpha-calendar-filter-summary,
body.mobile-dark .filalpha-shared-cron-box,
body.mobile-dark .filalpha-filum-card,
body.mobile-dark .filalpha-file-tile,
body.mobile-dark .filalpha-file-selected,
body.mobile-dark .filalpha-file-details,
body.mobile-dark #filalphaBulkPanel,
body.mobile-dark .filalpha-file-modal-content {
	background: rgba(255, 255, 255, .06) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, .10) !important;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .22) !important;
}

/* testi dark */
body.mobile-dark .filalpha-module-title,
body.mobile-dark .filalpha-module-title h1,
body.mobile-dark .filalpha-search-box .form-label,
body.mobile-dark .filalpha-form-box .form-label,
body.mobile-dark .filalpha-search-box label,
body.mobile-dark .filalpha-star-box label,
body.mobile-dark .events-form-check,
body.mobile-dark .filalpha-star-card-user,
body.mobile-dark .filalpha-star-card-text,
body.mobile-dark .filalpha-filum-card-title,
body.mobile-dark .filalpha-file-tile,
body.mobile-dark .filalpha-pagination,
body.mobile-dark #filalphaBulkPanel .filalpha-bulk-panel-title,
body.mobile-dark #filalphaBulkPanel .form-label {
	color: #ffffff !important;
}

body.mobile-dark .filalpha-module-title p,
body.mobile-dark .filalpha-star-card-date,
body.mobile-dark .filalpha-filum-card-meta,
body.mobile-dark .filalpha-file-name,
body.mobile-dark .events-form-help,
body.mobile-dark .events-file-help,
body.mobile-dark #details,
body.mobile-dark .filalpha-shared-cron-text,
body.mobile-dark .mobile-bottom-bar,
body.mobile-dark .mobile-bottom-col-center,
body.mobile-dark .mobile-bottom-link {
	color: #8c99a5 !important;
}

/* input in dark restano bianchi come ora */
body.mobile-dark .form-control,
body.mobile-dark .form-select,
body.mobile-dark textarea,
body.mobile-dark .filalpha-search-box .form-control,
body.mobile-dark .filalpha-form-box .form-control,
body.mobile-dark .filalpha-form-box .form-select,
body.mobile-dark .filalpha-star-box .form-control,
body.mobile-dark #filalphaBulkPanel .form-control,
body.mobile-dark #filalphaBulkPanel textarea {
	background: #ffffff !important;
	color: #172033 !important;
	border: 0 !important;
}

/* icone fontawesome dark come prima */
body.mobile-dark .mobile-main-action-icon,
body.mobile-dark .filalpha-module-shell .mobile-main-action-icon {
	color: #ffffff !important;
	text-shadow: 0 3px 0 #0b8bdd, 0 10px 22px rgba(0, 0, 0, .35) !important;
}

/* modal dark */
body.mobile-dark .filalpha-file-modal-content {
	background: #161b1c !important;
	color: #ffffff !important;
}

body.mobile-dark .filalpha-file-modal-content .modal-header {
	border-bottom: 1px solid rgba(255, 255, 255, .10) !important;
}

body.mobile-dark .filalpha-file-modal-content .btn-close {
	filter: invert(1) !important;
}

/* =========================================================
   FILALPHA - STAR FORM ICON BUTTONS LIGHT/DARK
========================================================= */

/* LIGHT */
body:not(.mobile-dark) .filalpha-star-icon-btn {
	background: #ffffff !important;
	border: 1px solid rgba(23, 76, 159, .22) !important;
	color: #174c9f !important;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .06) !important;
}

body:not(.mobile-dark) .filalpha-star-icon-btn i {
	color: #174c9f !important;
}

body:not(.mobile-dark) .filalpha-star-icon-btn:hover,
body:not(.mobile-dark) .filalpha-star-icon-btn:focus {
	background: rgba(23, 76, 159, .10) !important;
	border-color: rgba(23, 76, 159, .35) !important;
	color: #174c9f !important;
}

body:not(.mobile-dark) .filalpha-star-icon-btn i.active {
	color: #198754 !important;
}

/* DARK */
body.mobile-dark .filalpha-star-icon-btn {
	background: rgba(255, 255, 255, .08) !important;
	border: 1px solid rgba(255, 255, 255, .12) !important;
	color: #ffffff !important;
	box-shadow: none !important;
}

body.mobile-dark .filalpha-star-icon-btn i {
	color: #ffffff !important;
}

body.mobile-dark .filalpha-star-icon-btn:hover,
body.mobile-dark .filalpha-star-icon-btn:focus {
	background: rgba(7, 156, 255, .22) !important;
	color: #ffffff !important;
}

body.mobile-dark .filalpha-star-icon-btn i.active {
	color: #6ee7b7 !important;
}

/* =========================================================
   FILALPHA - FA MENU ICONS OUTLINE
   solo icone grandi menu / sottomenu
========================================================= */

/* LIGHT */
body:not(.mobile-dark) .filalpha-sub-grid .mobile-main-action-icon i {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	-webkit-text-stroke: 2.4px #174c9f !important;
	text-shadow: none !important;
}

/* titolo modulo, se lo vuoi contornato uguale */
body:not(.mobile-dark) .filalpha-module-title-icon i {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	-webkit-text-stroke: 1.7px #174c9f !important;
	text-shadow: none !important;
}

/* DARK */
body.mobile-dark .filalpha-sub-grid .mobile-main-action-icon i {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	-webkit-text-stroke: 2.4px #ffffff !important;
	text-shadow: none !important;
}

body.mobile-dark .filalpha-module-title-icon i {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	-webkit-text-stroke: 1.7px #ffffff !important;
	text-shadow: none !important;
}

body.mobile-dark .filalpha-sub-grid .mobile-main-action-icon i {
	-webkit-text-stroke: 2.4px #4f8cff !important;
}


/* =========================================================
   FILALPHA - BULK PANEL LIGHT MODE FIX
========================================================= */

body:not(.mobile-dark) #filalphaBulkPanel {
	background: #f7faff !important;
	border: 1px solid rgba(23, 76, 159, .18) !important;
	box-shadow: 0 -10px 30px rgba(23, 76, 159, .12) !important;
	color: #172033 !important;
	border-radius: 22px !important;
	margin-bottom: 12px !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .filalpha-bulk-panel-title {
	color: #172033 !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .filalpha-bulk-count {
	color: #198754 !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .btn-outline-light {
	background: #ffffff !important;
	border: 1px solid rgba(23, 76, 159, .35) !important;
	color: #174c9f !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .btn-outline-light i {
	color: #174c9f !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .btn-outline-light:hover,
body:not(.mobile-dark) #filalphaBulkPanel .btn-outline-light:focus {
	background: rgba(23, 76, 159, .10) !important;
	border-color: rgba(23, 76, 159, .55) !important;
	color: #174c9f !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .btn-primary {
	background: #174c9f !important;
	border-color: #174c9f !important;
	color: #ffffff !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .btn-primary i {
	color: #ffffff !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .form-label,
body:not(.mobile-dark) #filalphaBulkPanel .text-light {
	color: #172033 !important;
}

body:not(.mobile-dark) #filalphaBulkPanel #bulkSearchInput {
	background: #ffffff !important;
	color: #172033 !important;
	border: 1px solid rgba(20, 30, 50, .12) !important;
}

body:not(.mobile-dark) #filalphaBulkPanel #bulkSearchResults {
	background: #ffffff !important;
	border: 1px solid rgba(20, 30, 50, .10) !important;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .08) !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .filalpha-selected-user {
	background: #174c9f !important;
	border: 1px solid #174c9f !important;
	color: #ffffff !important;
}

body:not(.mobile-dark) #filalphaBulkPanel .filalpha-selected-user button {
	color: #ffffff !important;
}

CSS sicuro da mettere in fondo
/* =========================================================
   FILALPHA - ACCESSIBILITY FONT SIZE SAFE
   aumenta solo testi, non rompe schede/form/liste
========================================================= */

html {
	--filalpha-font-scale: 1;
}

/* livelli controllati */
html.filalpha-font-normal {
	--filalpha-font-scale: 1;
}

html.filalpha-font-large {
	--filalpha-font-scale: 1.10;
}

html.filalpha-font-xlarge {
	--filalpha-font-scale: 1.18;
}

/* titoli */
.filalpha-module-title h1 {
	font-size: calc(22px * var(--filalpha-font-scale)) !important;
	line-height: 1.15 !important;
}

.filalpha-module-title p {
	font-size: calc(13px * var(--filalpha-font-scale)) !important;
	line-height: 1.35 !important;
}

/* card lista */
.filalpha-star-card-user,
.filalpha-filum-card-title {
	font-size: calc(15px * var(--filalpha-font-scale)) !important;
	line-height: 1.25 !important;
	word-break: break-word;
	overflow-wrap: break-word;
}

.filalpha-star-card-text,
.filalpha-shared-cron-text,
.filalpha-filum-subtitle {
	font-size: calc(14px * var(--filalpha-font-scale)) !important;
	line-height: 1.45 !important;
	word-break: break-word;
	overflow-wrap: break-word;
}

.filalpha-star-card-date,
.filalpha-filum-card-meta,
.filalpha-file-name,
.events-form-help,
.events-file-help,
.filalpha-pagination-center {
	font-size: calc(12px * var(--filalpha-font-scale)) !important;
	line-height: 1.35 !important;
}

/* form */
.form-label,
.filalpha-search-box label,
.filalpha-search-box .form-label,
.filalpha-form-box .form-label,
.filalpha-star-box label,
#filalphaBulkPanel .form-label {
	font-size: calc(14px * var(--filalpha-font-scale)) !important;
	line-height: 1.3 !important;
}

.form-control,
.form-select,
textarea {
	font-size: calc(15px * var(--filalpha-font-scale)) !important;
	line-height: 1.35 !important;
}

/* bottoni / azioni */
.filalpha-star-action,
.filalpha-filum-action,
.filalpha-form-btn,
#filalphaBulkPanel .btn {
	font-size: calc(12px * var(--filalpha-font-scale)) !important;
	line-height: 1.2 !important;
	white-space: normal !important;
}

/* risultati AJAX / combo */
.filalpha-search-result-user,
.filalpha-search-result-single,
.filalpha-search-empty,
.filalpha-ajax-result-item {
	font-size: calc(13px * var(--filalpha-font-scale)) !important;
	line-height: 1.35 !important;
	word-break: break-word;
	overflow-wrap: break-word;
}

/* menu */
.mobile-main-action-text,
.filalpha-module-shell .mobile-main-action-text {
	font-size: calc(15px * var(--filalpha-font-scale)) !important;
	line-height: 1.25 !important;
}

/* controllo font compatto */
.filalpha-font-size-box {
	position: fixed;
	right: 12px;
	bottom: calc(76px + env(safe-area-inset-bottom));
	z-index: 99999;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.filalpha-font-size-toggle,
.filalpha-font-size-btn {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 1px solid rgba(23, 76, 159, .22);
	background: #ffffff;
	color: #174c9f;
	font-weight: 900;
	font-size: 13px;
	box-shadow: 0 8px 20px rgba(0,0,0,.14);
	display: flex;
	align-items: center;
	justify-content: center;
}

.filalpha-font-size-options {
	display: none;
	flex-direction: column;
	gap: 6px;
}

.filalpha-font-size-box.open .filalpha-font-size-options {
	display: flex;
}

body.mobile-dark .filalpha-font-size-toggle,
body.mobile-dark .filalpha-font-size-btn {
	background: rgba(255,255,255,.10);
	border: 1px solid rgba(255,255,255,.16);
	color: #ffffff;
}


/* =========================================================
   CONNECTIONS AVATAR
========================================================= */

.filalpha-star-card-icon .filalpha-connection-avatar {
	width: 42px;
	height: 42px;
	min-width: 42px;
	max-width: 42px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.filalpha-star-card-icon {
	overflow: hidden;
}

.filalpha-connection-avatar-icon {
	font-size: 20px;
	line-height: 42px;
}