/* Le nuove funzioni riprendono caratteri, colori e bordi del tema Lions. */
body.socio .page-socio .lions-member-heading {font-family:'Lato',sans-serif;font-size:24px;font-weight:400;color:#004876;margin:0 0 24px;}
body.socio .page-socio .lions-member-photo,
body.socio .page-socio .lions-member-filter,
body.socio .page-socio .lions-member-count,
body.socio .page-socio .lions-member-empty,
body.socio .page-socio .lions-member-receipt summary,
body.socio .page-socio .btn {font-family:'Lato',sans-serif;font-size:15px;}
body.socio .page-socio .lions-member-photo label {font-weight:400;margin-bottom:12px;}
body.socio .page-socio .lions-member-photo .help-block {font-size:13px;line-height:1.6;color:#555;margin:12px 0 20px;max-width:65ch;}
.lions-member-file {display:block;max-width:100%;width:100%;font:inherit;}
.lions-member-file::file-selector-button {font:inherit;padding:10px 14px;margin-right:12px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#005daa;cursor:pointer;}
.lions-member-file::file-selector-button:hover {background:#f5f5f5;}
body.socio .page-socio .btn {min-height:44px;padding:10px 16px;white-space:normal;}
.lions-reports-header {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e7e7e7;}
body.socio .page-socio .lions-reports-header .lions-member-heading {margin-bottom:6px;}
body.socio .page-socio .lions-member-filter {display:flex;align-items:flex-end;gap:10px;margin:0;padding:0;background:none;border:0;}
.lions-member-filter-field {display:flex;flex-direction:column;gap:6px;}
.lions-member-filter label {margin:0;font-size:13px;font-weight:700;color:#333;}
.lions-member-filter .form-control {width:130px;height:44px;}
body.socio .page-socio .lions-member-count {margin:0;color:#555;}
body.socio .page-socio .lions-member-reports {margin-bottom:24px;}
body.socio .page-socio .lions-member-reports .list-group-item {display:flex;align-items:center;gap:24px;min-height:68px;padding:12px 16px;}
.lions-member-report-title {flex:1;min-width:0;line-height:1.5;overflow-wrap:anywhere;}
.lions-member-reports .btn {flex:0 0 auto;margin-left:auto;}
body.socio .page-socio .lions-member-empty {padding:24px;background:#fff;border:1px solid #e7e7e7;}
.lions-member-receipt {padding:0;margin-bottom:12px;overflow-wrap:anywhere;}
.lions-member-receipt summary {padding:16px;color:#005daa;cursor:pointer;min-height:52px;}
.lions-member-receipt summary:hover {background:#f5f5f5;}
.lions-member-receipt[open] summary {border-bottom:1px solid #e7e7e7;margin-bottom:16px;}
.lions-member-receipt > p,.lions-member-receipt > .table-responsive {margin:0 16px 16px;}
.page-socio :is(a,button,input,select,summary):focus-visible {outline:2px solid #005daa;outline-offset:3px;}
body.socio .page-content .tab-content.page-socio .nav-tabs-profilo {display:flex;flex-wrap:wrap;}
body.socio .page-content .tab-content.page-socio .nav-tabs-profilo li a {padding:12px 14px;}
@media(max-width:767px) {
 .lions-reports-header {align-items:stretch;flex-direction:column;gap:16px;}
 body.socio .page-socio .lions-member-filter {align-items:flex-end;}
 .lions-member-filter-field {flex:1;}
 .lions-member-filter .form-control {width:100%;}
 body.socio .page-socio .lions-member-reports .list-group-item {align-items:center;gap:12px;padding:14px;}
 body.socio .page-content .tab-content.page-socio .nav-tabs-profilo li a {padding:12px 10px;font-size:14px;}
}

@media(max-width:480px) {
 body.socio .page-socio .lions-member-filter {align-items:stretch;flex-direction:column;}
 .lions-member-filter .btn {width:100%;}
 body.socio .page-socio .lions-member-reports .list-group-item {align-items:flex-start;flex-direction:column;}
 .lions-member-reports .btn {align-self:flex-end;margin-left:0;}
}
body.socio .page-socio nav[aria-label="Pagine"] .page-numbers {display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;}
body.socio .page-socio nav[aria-label="Pagine"] li {margin:0;padding:0;list-style:none;}
body.socio .page-socio nav[aria-label="Pagine"] a,
body.socio .page-socio nav[aria-label="Pagine"] span {display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #d7d7d7;border-radius:4px;background:#fff;font-family:'Lato',sans-serif;font-size:14px;line-height:1;color:#005daa;text-decoration:none;}
body.socio .page-socio nav[aria-label="Pagine"] a:hover {border-color:#005daa;background:#f5f8fb;}
body.socio .page-socio nav[aria-label="Pagine"] .current {border-color:#005daa;background:#005daa;color:#fff;}
body.socio .page-socio nav[aria-label="Pagine"] .prev,
body.socio .page-socio nav[aria-label="Pagine"] .next {padding-right:14px;padding-left:14px;}

/* Accesso soci: card più istituzionale, con marchio e gerarchia visiva più netta. */
.lions-member-login-stage {
	position: relative;
	overflow: hidden;
	min-height: 360px;
	padding: 64px 0 72px;
	background:
		radial-gradient(circle at top left, rgba(255,207,3,.18), transparent 34%),
		radial-gradient(circle at 85% 10%, rgba(0,93,170,.16), transparent 28%),
		linear-gradient(145deg, #f3f7fb 0%, #ffffff 58%, #eef5fb 100%);
	border-bottom: 1px solid #dce6ee;
}
.lions-member-login-stage::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, rgba(0,93,170,.04), transparent 42%, rgba(255,207,3,.05));
	pointer-events: none;
}
.lions-member-login-card {
	position: relative;
	max-width: 680px;
	margin: 0 auto;
	padding: 44px 40px 42px;
	background: #fff;
	border: 1px solid #d9e3ec;
	border-top: 6px solid #ffcf03;
	box-shadow: 0 24px 60px rgba(0,35,61,.14);
}
.lions-member-login-brand {
	display: block;
	width: min(360px, 76%);
	margin: 0 auto 18px;
}
.lions-member-login-brand img,
.lions-member-login-brand-modal {
	display: block;
	width: 100%;
	height: auto;
}
.lions-member-login-icon {display:block;margin:6px auto 14px;font-size:42px;color:#005daa;}
.lions-member-login-card h2 {margin:0 0 12px;font-family:'Oswald',sans-serif;font-size:34px;font-weight:400;line-height:1.1;text-transform:uppercase;color:#003259;}
.lions-member-login-card p {max-width:52ch;margin:0 auto 28px;font-size:17px;line-height:1.7;color:#4b5962;}
.lions-member-login-card .btn {min-width:240px;min-height:50px;padding:13px 24px;box-shadow:0 10px 22px rgba(0,93,170,.15);}
.lions-member-login-modal .modal-dialog {max-width:520px;margin-top:8vh;}
.lions-member-login-modal .modal-content {overflow:hidden;border:0;border-radius:0;box-shadow:0 24px 70px rgba(0,35,61,.34);background:#fff;}
.lions-member-login-modal .modal-header {position:relative;padding:26px 28px 20px;border-bottom:4px solid #ffcf03;background:linear-gradient(180deg,#005daa 0%,#00487f 100%);color:#fff;}
.lions-member-login-modal .modal-header::after {
	content: '';
	position: absolute;
	right: -40px;
	top: -40px;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: rgba(255,207,3,.14);
}
.lions-member-login-modal .modal-header .close {position:relative;z-index:1;min-width:44px;min-height:44px;margin:-10px -10px 0 0;color:#fff;opacity:.9;text-shadow:none;}
.lions-member-login-modal .modal-title {position:relative;z-index:1;margin:12px 0 6px;font-family:'Oswald',sans-serif;font-size:29px;font-weight:400;line-height:1.1;text-transform:uppercase;}
.lions-member-login-modal .modal-header p {position:relative;z-index:1;margin:0;color:#fff;opacity:.92;}
.lions-member-login-modal .modal-body {padding:30px 28px 32px;background:#fff;}
.lions-member-login-brand-modal {position:relative;z-index:1;width:min(220px,68%);margin:0 0 14px;filter:brightness(1.05) contrast(1.02);}
.lions-member-login-form label {color:#263743;font-weight:700;}
.lions-member-login-form .form-group {margin-bottom:18px;}
.lions-member-login-form .form-control {height:48px;border-color:#aebdc8;border-radius:2px;box-shadow:none;font-size:16px;background:#fff;}
.lions-member-login-form .form-control:focus {border-color:#005daa;box-shadow:0 0 0 3px rgba(0,93,170,.14);}
.lions-member-login-form .checkbox {margin:18px 0 22px;}
.lions-member-login-form .checkbox label {display:flex;align-items:center;gap:8px;font-weight:400;}
.lions-member-login-form .btn {min-height:50px;box-shadow:0 14px 26px rgba(0,93,170,.18);}
.lions-member-login-form .btn:hover {box-shadow:0 18px 30px rgba(0,93,170,.22);}
@media(max-width:767px) {
 .lions-member-login-stage {min-height:0;padding:30px 15px 36px;}
 .lions-member-login-card {padding:28px 20px 26px;}
 .lions-member-login-brand {width:min(300px,82%);}
 .lions-member-login-card h2 {font-size:28px;}
 .lions-member-login-card p {font-size:16px;}
 .lions-member-login-modal .modal-dialog {margin:18px 12px;}
 .lions-member-login-modal .modal-header,
 .lions-member-login-modal .modal-body {padding-left:20px;padding-right:20px;}
 .lions-member-login-modal .modal-title {font-size:26px;}
}
