/**
 * FUTSOC Parent Dashboard / Ultimate Member styles.
 * Consolidated from the legacy inline PHP style blocks.
 * Keep Team Management styling isolated in /includes.
 */

/* ===== Extracted block 1 ===== */
/* ---------------------------------------------------------
		 * Shared account surface
		 * --------------------------------------------------------- */
		.um-account .futsoc-dashboard-section,
		.um-account .futsoc-child-card,
		.um-account .futsoc-family-contact-card,
		.um-account .futsoc-account-panel {
			background:#fff !important;
			border:1px solid #e2e5e8 !important;
			border-radius:0 !important;
			box-shadow:none !important;
		}

		.um-account .futsoc-dashboard-section {
			padding:14px !important;
		}

		.um-account .futsoc-account-section-header,
		.um-account .futsoc-dashboard-section > .futsoc-account-section-header {
			display:flex;
			align-items:center;
			justify-content:space-between;
			gap:14px;
			margin:-14px -14px 14px !important;
			padding:11px 14px;
			border-bottom:1px solid #e2e5e8;
			background:#f6f7f8;
		}

		.um-account .futsoc-account-section-header h3,
		.um-account .futsoc-account-section-header h4 {
			margin:0 !important;
			font-size:14px !important;
			font-weight:800 !important;
			line-height:1.2 !important;
			letter-spacing:.02em;
			text-transform:uppercase;
			color:#111 !important;
		}

		.um-account .futsoc-account-section-header a {
			font-size:12px !important;
			font-weight:700 !important;
			color:#555 !important;
			text-decoration:none !important;
		}

		.um-account .futsoc-account-section-header a:hover {
			color:#111 !important;
			text-decoration:underline !important;
		}

		/* ---------------------------------------------------------
		 * Buttons / controls
		 * --------------------------------------------------------- */
		.um-account .um-button,
		.um-account button,
		.um-account input[type="submit"] {
			border-radius:0 !important;
		}

		.um-account .futsoc-account-action-button,
		.um-account .futsoc-event-action-button,
		.um-account .futsoc-toggle-child-btn {
			transition:
				background-color .15s ease,
				color .15s ease,
				border-color .15s ease,
				box-shadow .15s ease !important;
		}

		/* ---------------------------------------------------------
		 * Dashboard
		 * --------------------------------------------------------- */
		.um-account .futsoc-dashboard {
			gap:14px !important;
		}

		.um-account .futsoc-dashboard-action-buttons {
			margin:16px 0 !important;
		}

		.um-account .futsoc-dashboard-section [style*="border-radius:10px"],
		.um-account .futsoc-dashboard-section [style*="border-radius: 10px"] {
			border-radius:0 !important;
		}

		.um-account .futsoc-dashboard-section > div > div[style*="border:1px solid #eee"],
		.um-account .futsoc-dashboard-section > div > div[style*="border: 1px solid #eee"] {
			background:#fff;
			border-color:#e2e5e8 !important;
		}

		.um-account .futsoc-dashboard-section img {
			border-radius:0 !important;
		}

		/* Dashboard My Players preview mirrors the full My Players list. */
		.um-account .futsoc-dashboard-player-list{
			margin:0 !important;
		}

		.um-account .futsoc-dashboard-player-list .futsoc-child-card-header{
			min-height:76px;
			padding:11px 14px !important;
		}

		.um-account .futsoc-dashboard-player-team{
			margin-top:3px;
			font-size:14px;
			color:#666;
		}

		/* Dashboard Recent Registrations mirrors the My Orders table. */
		.um-account .futsoc-dashboard-orders-wrap{
			overflow-x:auto;
		}

		.um-account .futsoc-dashboard-orders-table{
			width:100%;
			border:1px solid #e2e5e8;
			border-collapse:collapse;
			background:#fff;
			font-size:14px;
		}

		.um-account .futsoc-dashboard-orders-table th{
			padding:10px 12px;
			background:#f6f7f8;
			border-bottom:1px solid #dfe3e6;
			text-align:left;
			font-size:11px;
			font-weight:800;
			text-transform:uppercase;
			letter-spacing:.03em;
			color:#555;
		}

		.um-account .futsoc-dashboard-orders-table td{
			padding:11px 12px;
			border-bottom:1px solid #eceeef;
			vertical-align:middle;
			color:#555;
		}

		.um-account .futsoc-dashboard-orders-table tbody tr:last-child td{
			border-bottom:0;
		}

		.um-account .futsoc-dashboard-order-number{
			font-weight:800 !important;
			color:#111 !important;
			text-decoration:none !important;
		}

		.um-account .futsoc-dashboard-order-number:hover{
			text-decoration:underline !important;
		}

		.um-account .futsoc-dashboard-order-total{
			font-weight:700;
			color:#222 !important;
			white-space:nowrap;
		}

		@media (max-width:700px){
			.um-account .futsoc-dashboard-orders-table thead{
				display:none;
			}

			.um-account .futsoc-dashboard-orders-table,
			.um-account .futsoc-dashboard-orders-table tbody,
			.um-account .futsoc-dashboard-orders-table tr,
			.um-account .futsoc-dashboard-orders-table td{
				display:block;
				width:100%;
				box-sizing:border-box;
			}

			.um-account .futsoc-dashboard-orders-table tr{
				padding:8px 0;
				border-bottom:1px solid #dfe3e6;
			}

			.um-account .futsoc-dashboard-orders-table tr:last-child{
				border-bottom:0;
			}

			.um-account .futsoc-dashboard-orders-table td{
				position:relative;
				padding:7px 12px 7px 104px;
				border-bottom:0;
			}

			.um-account .futsoc-dashboard-orders-table td::before{
				content:attr(data-title);
				position:absolute;
				left:12px;
				top:7px;
				width:82px;
				font-size:11px;
				font-weight:800;
				text-transform:uppercase;
				color:#777;
			}
		}

		/* ---------------------------------------------------------
		 * My Players
		 * --------------------------------------------------------- */
		.um-account .futsoc-child-list {
			gap:0 !important;
			border:1px solid #e2e5e8;
			background:#fff;
		}

		.um-account .futsoc-child-list > .futsoc-child-card {
			margin:0 !important;
			border:0 !important;
			border-bottom:1px solid #e2e5e8 !important;
			border-left:5px solid #111 !important;
			padding:0 !important;
		}

		.um-account .futsoc-child-list > .futsoc-child-card:last-child {
			border-bottom:0 !important;
		}

		.um-account .futsoc-child-card-header {
			padding:13px 14px;
		}

		.um-account .futsoc-child-card-summary-photo,
		.um-account .futsoc-child-avatar {
			border-radius:0 !important;
		}

		.um-account .futsoc-child-points,
		.um-account .futsoc-child-badges {
			border-radius:0 !important;
			box-shadow:none !important;
		}

		/* ---------------------------------------------------------
		 * Rewards
		 * --------------------------------------------------------- */
		.um-account .futsoc-rewards-tab {
			margin-top:20px;
		}

		.um-account .futsoc-rewards-tab .futsoc-dashboard-section {
			margin:0 0 14px !important;
		}

		.um-account .futsoc-rewards-tab table {
			border:1px solid #e2e5e8;
			background:#fff;
		}

		.um-account .futsoc-rewards-tab thead th {
			padding:10px 12px !important;
			background:#f6f7f8;
			border-bottom:1px solid #dfe3e6 !important;
			font-size:11px;
			font-weight:800;
			text-transform:uppercase;
			letter-spacing:.03em;
			color:#555;
		}

		.um-account .futsoc-rewards-tab tbody td {
			padding:11px 12px !important;
			border-bottom:1px solid #eceeef !important;
		}

		.um-account .futsoc-rewards-tab tbody tr:last-child td {
			border-bottom:0 !important;
		}

		/* Shared earned badge-level display: My Players + Rewards & Badges. */
		.um-account .futsoc-earned-badge-levels{
			display:flex;
			align-items:flex-start;
			gap:14px;
			flex-wrap:wrap;
			margin:0 !important;
			padding:0 !important;
			border:0 !important;
		}

		.um-account .futsoc-earned-badge-level{
			display:inline-flex;
			flex-direction:column;
			align-items:center;
			justify-content:flex-start;
			gap:6px;
			min-width:78px;
			text-align:center;
		}

		.um-account .futsoc-earned-badge-level img{
			display:block;
			height:92px !important;
			width:auto !important;
			max-width:130px !important;
			object-fit:contain;
			border-radius:0 !important;
		}

		.um-account .futsoc-earned-badge-label{
			display:block;
			font-size:11px;
			font-weight:800;
			line-height:1.2;
			color:#555;
		}

		.um-account .futsoc-badge-empty{
			display:block;
			font-size:13px;
			color:#777;
		}

		.um-account .futsoc-family-badge-players{
			display:flex;
			flex-direction:column;
			margin:-14px;
		}

		.um-account .futsoc-family-badge-player{
			display:grid;
			grid-template-columns:180px minmax(0,1fr);
			gap:18px;
			align-items:center;
			padding:16px 14px;
			border-bottom:1px solid #eceeef;
		}

		.um-account .futsoc-family-badge-player:last-child{
			border-bottom:0;
		}

		.um-account .futsoc-family-badge-player-name{
			font-size:15px;
			font-weight:800;
			color:#222;
		}


		.um-account .futsoc-points-history-scroll{
			max-height:390px;
			overflow:auto;
			border-top:1px solid #eee;
		}

		.um-account .futsoc-points-history-scroll table thead th{
			position:sticky;
			top:0;
			z-index:1;
			background:#fff;
		}

		@media (max-width:700px){
			.um-account .futsoc-family-badge-player{
				grid-template-columns:1fr;
				gap:12px;
			}

			.um-account .futsoc-earned-badge-level img{
				height:78px !important;
				max-width:112px !important;
			}
		}

		/* ---------------------------------------------------------
		 * Family Contacts
		 * --------------------------------------------------------- */
		.um-account .futsoc-family-contact-card {
			margin:0 0 12px !important;
			padding:0 !important;
			border-left:5px solid #111 !important;
		}

		.um-account .futsoc-family-contact-card > .futsoc-child-card-header {
			padding:13px 14px;
		}

		.um-account .futsoc-family-contact-card > [id^="futsoc-family-contact-details-"] {
			margin:0 !important;
			padding:14px 16px 16px;
			border-top:1px solid #eceeef;
			background:#fafafa;
		}

		.um-account #futsoc-add-family-contact-form.futsoc-family-contact-card {
			padding:16px !important;
			border-left:1px solid #e2e5e8 !important;
		}

		.um-account .futsoc-family-contact-grid input,
		.um-account .futsoc-family-contact-grid select,
		.um-account .futsoc-family-contact-grid textarea {
			border-radius:0 !important;
		}

		/* ---------------------------------------------------------
		 * My Orders / WooCommerce account table
		 * --------------------------------------------------------- */
		.um-account .um-woo-orders {
			margin-top:20px;
		}

		.um-account .um-woo-orders table.my_account_orders {
			width:100%;
			border:1px solid #e2e5e8 !important;
			border-collapse:collapse !important;
			background:#fff;
		}

		.um-account .um-woo-orders table.my_account_orders thead th {
			padding:11px 12px !important;
			background:#f6f7f8 !important;
			border:0 !important;
			border-bottom:1px solid #dfe3e6 !important;
			font-size:11px !important;
			font-weight:800 !important;
			text-transform:uppercase;
			letter-spacing:.03em;
			color:#555 !important;
		}

		.um-account .um-woo-orders table.my_account_orders tbody td {
			padding:12px !important;
			border:0 !important;
			border-bottom:1px solid #eceeef !important;
			vertical-align:middle;
			background:#fff !important;
		}

		.um-account .um-woo-orders table.my_account_orders tbody tr:last-child td {
			border-bottom:0 !important;
		}

		.um-account .um-woo-orders table.my_account_orders .order-number,
		.um-account .um-woo-orders table.my_account_orders .order-number a {
			font-weight:800 !important;
			color:#111 !important;
		}

		.um-account .um-woo-orders table.my_account_orders .button,
		.um-account .um-woo-orders table.my_account_orders .um-button {
			border-radius:0 !important;
			box-shadow:none !important;
		}

		/* My Orders - View Order Eye Button */

		.um-account td.order-detail {
			text-align: center !important;
			vertical-align: middle !important;
			width: 56px;
		}

		.um-account td.order-detail .um-woo-view-order {
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			width: 40px !important;
			height: 40px !important;
			min-width: 40px !important;
			padding: 0 !important;
			margin: 0 !important;
			border: 1px solid #dbe6df !important;
			border-radius: 0 !important;
			background: #ffffff !important;
			color: #5d6b63 !important;
			text-decoration: none !important;
			box-shadow: none !important;
		}

		.um-account td.order-detail .um-woo-view-order:hover,
		.um-account td.order-detail .um-woo-view-order:focus {
			background: #edf7f1 !important;
			border-color: #8fb19c !important;
			color: #176b3a !important;
			outline: none !important;
		}

		.um-account td.order-detail .um-woo-view-order .um-icon-eye {
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
			margin: 0 !important;
			padding: 0 !important;
			font-size: 18px !important;
			line-height: 1 !important;
			color: inherit !important;
		}

		/* ---------------------------------------------------------
		 * Players + Family Contacts refinement
		 * --------------------------------------------------------- */
		/* Full-width red primary actions for Players / Family Contacts */
		.um-account #futsoc-add-child-toggle,
		.um-account #futsoc-add-family-contact-toggle{
			display:flex !important;
			align-items:center !important;
			justify-content:center !important;
			width:100% !important;
			max-width:none !important;
			margin:0 !important;
			background:#ff1010 !important;
			color:#000 !important;
			border:0 !important;
			box-shadow:none !important;
		}

		.um-account #futsoc-add-child-toggle:hover,
		.um-account #futsoc-add-family-contact-toggle:hover{
			background:#b30000 !important;
			color:#000 !important;
		}

		/* Consistent page rhythm: heading -> action -> content. */
		.um-account .futsoc-account-primary-action-wrap{
			margin:16px 0 !important;
		}

		/* Player row color follows the player's active seasonal team. */
		.um-account .futsoc-child-list > .futsoc-child-card{
			border-left-color:var(--futsoc-player-team-color, #111111) !important;
		}

		/* Keep Edit Player readable instead of using the display/header font. */
		.um-account .futsoc-edit-player-button{
			font-family:Arial, Helvetica, sans-serif !important;
			font-size:14px !important;
			font-weight:600 !important;
			letter-spacing:0 !important;
			text-transform:none !important;
		}

		.um-account .futsoc-account-page-actions{
			display:flex;
			align-items:center;
			justify-content:flex-end;
			margin:0 0 12px;
		}

		.um-account .futsoc-account-icon-button{
			width:38px !important;
			height:38px !important;
			min-width:38px !important;
			padding:0 !important;
			margin:0 !important;
			display:inline-flex !important;
			align-items:center;
			justify-content:center;
			border:1px solid #dbe6df !important;
			background:#fff !important;
			box-shadow:none !important;
			color:#5d6b63 !important;
			font-size:25px !important;
			font-weight:400 !important;
			line-height:1 !important;
			cursor:pointer;
			transition:all .15s ease !important;
		}

		.um-account .futsoc-account-icon-button:hover,
		.um-account .futsoc-account-icon-button:focus{
			background:#edf7f1 !important;
			border-color:#8fb19c !important;
			color:#176b3a !important;
			outline:none !important;
		}

		.um-account .futsoc-child-list > .futsoc-child-card,
		.um-account .futsoc-family-contact-card{
			cursor:default !important;
		}

		.um-account .futsoc-child-card-header{
			min-height:76px;
			box-sizing:border-box;
			background:#fff;
		}

		.um-account .futsoc-child-card-summary-photo{
			width:54px !important;
			height:54px !important;
			flex:0 0 54px !important;
			background:#f0f1f2 !important;
		}

		.um-account .futsoc-child-card-summary-name{
			font-size:16px !important;
			font-weight:800 !important;
			color:#222;
		}


		.um-account .futsoc-child-card-summary-copy{
			min-width:0;
		}

		.um-account .futsoc-child-card-summary-title-row{
			display:flex;
			align-items:center;
			gap:7px;
			flex-wrap:wrap;
		}

		.um-account .futsoc-child-card-summary-chips{
			display:flex;
			align-items:center;
			gap:5px;
			flex-wrap:wrap;
		}

		.um-account .futsoc-child-card-summary-chip{
			display:inline-flex;
			align-items:center;
			min-height:22px;
			padding:3px 7px;
			background:#f0f1f2;
			font-size:10px;
			font-weight:800;
			line-height:1;
			color:#666;
			white-space:nowrap;
		}

		.um-account .futsoc-child-card-summary-team{
			margin-top:4px;
			font-size:13px;
			font-weight:600;
			line-height:1.25;
			color:#666;
		}

		.um-account [id^="futsoc-child-details-"]{
			margin:0 !important;
			padding:16px !important;
			border-top:1px solid #e2e5e8;
			background:#fafafa;
			cursor:default;
			box-sizing:border-box;
		}

		.um-account [id^="futsoc-child-details-"] > .futsoc-upload-form{
			display:inline-block;
			width:calc(50% - 7px);
			min-height:112px;
			margin:0 10px 14px 0 !important;
			padding:14px !important;
			vertical-align:top;
			box-sizing:border-box;
			border:1px solid #e2e5e8 !important;
			background:#fff;
		}

		.um-account [id^="futsoc-child-details-"] > .futsoc-upload-form:nth-of-type(2){
			margin-right:0 !important;
		}

		.um-account [id^="futsoc-child-details-"] > p{
			display:inline-block;
			width:calc(50% - 8px);
			margin:0 12px 0 0 !important;
			padding:10px 0;
			border-bottom:1px solid #e6e8ea;
			vertical-align:top;
			box-sizing:border-box;
			font-size:14px;
		}

		.um-account [id^="futsoc-child-details-"] > p:nth-of-type(even){
			margin-right:0 !important;
		}

		.um-account [id^="futsoc-child-details-"] > .futsoc-child-badges{
			margin:0 0 10px !important;
			padding:12px 0 !important;
			border-top:1px solid #e6e8ea;
			border-bottom:1px solid #e6e8ea;
		}

		.um-account [id^="futsoc-child-details-"] > .futsoc-child-actions{
			gap:10px;
			margin-top:16px !important;
			padding-top:0;
		}

		.um-account [id^="futsoc-edit-child-"]{
			margin-top:16px !important;
			padding:16px !important;
			border:1px solid #e2e5e8 !important;
			background:#fff;
		}

		.um-account .futsoc-family-contact-card{
			margin:0 !important;
			border-bottom:1px solid #e2e5e8 !important;
		}

		.um-account .futsoc-family-contact-card:last-child{
			border-bottom:1px solid #e2e5e8 !important;
		}

		.um-account .futsoc-family-contact-card + .futsoc-family-contact-card{
			border-top:0 !important;
		}

		.um-account .futsoc-family-contact-card > [id^="futsoc-family-contact-details-"]{
			padding:16px !important;
			background:#fafafa !important;
		}

		.um-account #futsoc-add-child-form,
		.um-account #futsoc-add-family-contact-form{
			margin:0 0 14px !important;
			padding:18px !important;
			border:1px solid #e2e5e8 !important;
			background:#fafafa;
			box-shadow:none !important;
		}

		@media (max-width:700px){
			.um-account [id^="futsoc-child-details-"] > .futsoc-upload-form,
			.um-account [id^="futsoc-child-details-"] > p{
				display:block;
				width:100%;
				margin-right:0 !important;
			}
		}

		/* ---------------------------------------------------------
		 * Notices / empty states
		 * --------------------------------------------------------- */
		.um-account .futsoc-account-notice {
			margin:15px 0;
			padding:10px 14px;
			border:1px solid #dfe3e6;
			border-left:5px solid #111;
			background:#f8f9fa;
			color:#333;
		}

		@media (max-width:700px) {
			.um-account .futsoc-account-section-header {
				align-items:flex-start;
			}

			.um-account .um-woo-orders table.my_account_orders thead {
				display:none;
			}

			.um-account .um-woo-orders table.my_account_orders,
			.um-account .um-woo-orders table.my_account_orders tbody,
			.um-account .um-woo-orders table.my_account_orders tr,
			.um-account .um-woo-orders table.my_account_orders td {
				display:block;
				width:100%;
				box-sizing:border-box;
			}

			.um-account .um-woo-orders table.my_account_orders tbody tr {
				border-bottom:1px solid #dfe3e6;
				padding:8px 0;
			}

			.um-account .um-woo-orders table.my_account_orders tbody tr:last-child {
				border-bottom:0;
			}

			.um-account .um-woo-orders table.my_account_orders tbody td {
				border-bottom:0 !important;
				padding:7px 12px !important;
			}
		}


/* ===== Extracted block 2 ===== */
.futsoc-invitations-tab{
    		margin-top:22px;
    	}
    
    	.futsoc-invitation-list{
    		display:flex;
    		flex-direction:column;
    		gap:0;
    		border:1px solid #e5e5e5;
    		background:#fff;
    	}
    
    	.futsoc-invitation-card{
    		display:grid;
    		grid-template-columns:88px minmax(0,1fr) auto;
    		min-height:96px;
    		border-bottom:1px solid #e7e7e7;
    		border-left:5px solid #111;
    		background:#fff;
    	}
    
    	.futsoc-invitation-card:last-child{
    		border-bottom:0;
    	}
    
    	.futsoc-invitation-date{
    		display:flex;
    		flex-direction:column;
    		align-items:center;
    		justify-content:center;
    		padding:10px;
    		border-right:1px solid #e7e7e7;
    		background:#fafafa;
    	}
    
    	.futsoc-invitation-date-month{
    		font-size:11px;
    		font-weight:700;
    		text-transform:uppercase;
    		color:#777;
    	}
    
    	.futsoc-invitation-date-day{
    		margin-top:2px;
    		font-size:26px;
    		font-weight:700;
    		line-height:1;
    		color:#111;
    		white-space:nowrap;
    	}
    
    	.futsoc-invitation-date-range-separator{
    		margin:2px 0;
    		font-size:14px;
    		font-weight:700;
    		line-height:1;
    		color:#999;
    	}
    
    	.futsoc-invitation-content{
    		min-width:0;
    		padding:13px 16px;
    	}
    
    	.futsoc-invitation-type{
    		display:block;
    		margin-bottom:2px;
    		font-size:11px;
    		font-weight:700;
    		text-transform:uppercase;
    		color:#777;
    	}
    
    	.futsoc-invitation-title{
    		margin:0;
    		font-size:16px;
    		font-weight:700;
    		line-height:1.2;
    		color:#111;
    	}
    
        .futsoc-invitation-player{
        	display:flex;
        	align-items:center;
        	gap:3px;
        	margin-top:3px;
        	font-size:12px;
        	color:#777;
        }
        
        .futsoc-invitation-player strong{
        	color:#555;
        	font-weight:700;
        }
        
        .futsoc-invitation-player span{
        	font-weight:600;
        }
    
    	.futsoc-invitation-details{
    		display:grid;
    		grid-template-columns:1fr 1fr 1fr;
    		align-items:center;
    		gap:18px;
    		margin-top:8px;
    		font-size:13px;
    		color:#555;
    	}
    
    	.futsoc-invitation-detail{
    		min-width:0;
    	}
    
    	.futsoc-invitation-date-detail{
    		display:flex;
    		flex-direction:column;
    		gap:3px;
    		line-height:1.25;
    	}
    
        .futsoc-invitation-location{
        	font-weight:600;
        }
        
        .futsoc-invitation-location a{
        	color:inherit;
        	text-decoration:none;
        	font-weight:600;
        }
        
        .futsoc-invitation-location a:hover{
        	text-decoration:underline;
        }
    
        .futsoc-invitation-charge{
        	margin-top:7px;
        	font-size:12px;
        	color:#666;
        }
        
        .futsoc-invitation-charge strong{
        	color:#222;
        	font-size:13px;
        }
    
    	.futsoc-invitation-side{
    		display:flex;
    		flex-direction:column;
    		align-items:flex-end;
    		justify-content:center;
    		gap:8px;
    		min-width:155px;
    		padding:12px 14px;
    	}
    
    	.futsoc-invitation-status{
    		display:inline-flex;
    		align-items:center;
    		justify-content:center;
    		min-height:28px;
    		padding:5px 10px;
    		border:1px solid #d7d7d7;
    		font-size:12px;
    		font-weight:700;
    		line-height:1;
    		white-space:nowrap;
    	}
    
    	.futsoc-invitation-status.is-success{
    		background:#e8f5e9;
    		border-color:#81c784;
    		color:#2e7d32;
    	}
    
    	.futsoc-invitation-status.is-declined,
    	.futsoc-invitation-status.is-refunded{
    		background:#fdecec;
    		border-color:#ef9a9a;
    		color:#c62828;
    	}
    
    	.futsoc-invitation-status.is-pending{
    		background:#f3f3f3;
    		border-color:#d7d7d7;
    		color:#666;
    	}
    
    	.futsoc-invitation-actions{
    		display:flex;
    		align-items:center;
    		justify-content:flex-end;
    		gap:7px;
    		flex-wrap:wrap;
    		margin:0;
    	}
    
        .um-account .futsoc-invitation-actions .um-button{
        	display:inline-flex !important;
        	align-items:center;
        	justify-content:center;
        	width:auto !important;
        	min-width:0 !important;
        	min-height:34px !important;
        	margin:0 !important;
        	padding:7px 12px !important;
        	font-size:12px !important;
        	font-weight:700 !important;
        	line-height:1 !important;
        	white-space:nowrap;
        	box-shadow:none !important;
        }
        
        /* Confirm / Pay */
        .um-account .futsoc-invitation-actions .futsoc-event-action-button:not(.futsoc-toggle-child-btn){
        	background:red !important;
        	color:black !important;
        	cursor:pointer !important;
        	transition:all .15s ease;
        }
        
        .um-account .futsoc-invitation-actions .futsoc-event-action-button:not(.futsoc-toggle-child-btn):hover{
        	background:darkred !important;
        	color:black !important;
        }
        
        /* Decline */
        .um-account .futsoc-invitation-actions .futsoc-toggle-child-btn{
        	background:#f3f3f3 !important;
        	border:1px solid #d7d7d7 !important;
        	color:#111 !important;
        	cursor:pointer !important;
        	transition:all .15s ease;
        }
        
        .um-account .futsoc-invitation-actions .futsoc-toggle-child-btn:hover{
        	background:#ddd !important;
        	color:#111 !important;
        }
		.futsoc-invitation-section{
			margin:0 0 16px;
			border:1px solid #dfe3e6;
			background:#fff;
		}

		.futsoc-invitation-section:last-child{
			margin-bottom:0;
		}

		.futsoc-invitations-heading{
			margin:0;
			padding:11px 14px;
			border-bottom:1px solid #dfe3e6;
			background:#f3f4f5;
			font-size:14px;
			font-weight:800;
			line-height:1.2;
			text-transform:uppercase;
			color:#111;
		}

		.futsoc-invitation-section-body{
			padding:14px;
		}

		.futsoc-invitation-section-body.has-list{
			padding:0;
		}

		.futsoc-invitation-section-body .futsoc-invitation-list{
			border:0;
		}

		.futsoc-invitation-section-body > p{
			margin:0 !important;
			color:#666;
		}
@media (max-width:800px){
    
    		.futsoc-invitation-card{
    			grid-template-columns:72px minmax(0,1fr);
    		}
    
    		.futsoc-invitation-side{
    			grid-column:2;
    			align-items:flex-start;
    			min-width:0;
    			padding:0 12px 12px;
    		}
    
    		.futsoc-invitation-actions{
    			justify-content:flex-start;
    		}
    
    		.futsoc-invitation-details{
    			grid-template-columns:1fr;
    			gap:5px;
    		}
    	}


/* ===== Extracted block 3 ===== */
.futsoc-no-optional-label .optional,
    	#futsoc-checkout-add-child-form .optional {
    		display: none !important;
    	}


/* ===== Extracted block 4 ===== */
.futsoc-delete-child-link {
    	display: none !important;
    }
	.um-account-profile-link {
    	display: none !important;
    }
	.um-account .um-account-nav:nth-of-type(2) {
		display: none !important;
	}
	.um-account-link[data-tab="points"] {
		display: none !important;
	}
    .um-account-link[data-tab="points"],
    .um-account-link[data-tab="payment-methods"],
    .um-account-link[data-tab="payment_methods"],
    .um-account-link[href*="/account/points/"],
    .um-account-link[href*="/account/payment-methods/"],
    .um-account-link[href*="/account/payment_methods/"] {
    	display: none !important;
    }
    .um-account-nav:has(a[data-tab="points"]),
    .um-account-nav:has(a[data-tab="payment-methods"]),
    .um-account-nav:has(a[data-tab="payment_methods"]) {
    	display: none !important;
    }
    .um-account-nav:has(.um-account-profile-link) {
    	display: none !important;
    }
	.um-account-link[data-tab="payment-methods"] {
    	display: none !important;
    }
    #um_account_submit_calendar,
    input[name="um_account_submit"][value="Calendar"] {
    	display: none !important;
    }
    #um_account_submit_dashboard,
    input[name="um_account_submit"][value="Dashboard"] {
    	display: none !important;
    }
    #um_account_submit_family_contacts,
    input[name="um_account_submit"][value="Family Contacts"] {
    	display: none !important;
    }
    #um_account_submit_rewards,
    input[name="um_account_submit"][value="Rewards"] {
    	display: none !important;
    }
    #um_account_submit_invitations,
    input[name="um_account_submit"][value="Invitations"] {
    	display: none !important;
    }
	.um-account .um-account-nav a[href*="my-points"],
    .um-account .um-account-nav a[href*="points"],
    .um-account .um-account-tab-my-points,
    .um-account .um-account-tab-points {
	display: none !important;
    }
    
    /* Hide unwanted UM account tabs */
    
    .um-account-link[data-tab="downloads"],
    .um-account-link[data-tab="subscription"],
    .um-account-link[data-tab="shipping"],
    .um-account-link[data-tab="shipping-address"] {
    	display: none !important;
    }
    
    /* Mobile */
    
    .um-account-nav-item:has(a[data-tab="downloads"]),
    .um-account-nav-item:has(a[data-tab="subscription"]),
    .um-account-nav-item:has(a[data-tab="shipping"]),
    .um-account-nav-item:has(a[data-tab="shipping-address"]) {
    	display: none !important;
    }

    @media (min-width: 576px) {
        .um-account-nav a.current,
        .um-account-nav a.current:hover,
        .um-account-nav a.active,
        .um-account-nav a.active:hover {
        	background: #676767 !important;
        	color: #000 !important;
        	font-weight: 600;
        }
        .um-account-link.current,
        .um-account-link.current:hover {
        	background: #676767 !important;
        }
    }
    .um-account-name > a {
    	pointer-events: none;
    	cursor: default;
    	text-decoration: none !important;
    	color: inherit !important;
    }
    .um-account-meta-img {
        display: none !important;
    }
    .futsoc-upload-form input[type="file"] {
    	display: none;
    }
    .futsoc-upload-link {
    	display: inline-flex;
    	align-items: center;
    	gap: 8px;
    	color: #444;
    	font-weight: 600;
    	cursor: pointer;
    	text-decoration: none;
    	margin-top: 8px;
    }
    .futsoc-upload-link:hover {
    	color: #000;
    	text-decoration: underline;
    }
    .futsoc-dashboard a {
    	color: #444 !important;
    	text-decoration: none !important;
    	font-weight: 500;
    }
    .futsoc-dashboard a:hover {
    	color: #000 !important;
    	text-decoration: underline;
    }
    .tribe-events-widget-events-list__view-more-link,
    .tribe-events-c-view-calendar-link,
    .tribe-common-c-btn-border-small {
    	display: none !important;
    }
    .futsoc-child-list {
    	display: flex;
    	flex-direction: column;
    	gap: 12px;
    }
    .futsoc-child-card {
    	padding: 14px 16px !important;
    	cursor: pointer;
    }
    .futsoc-child-card-header {
    	display: flex;
    	flex-direction: row;
    	align-items: center !important;
    	justify-content: space-between;
    	text-align: left;
    	gap: 14px;
    	width: 100%;
    }
    .futsoc-child-card-summary {
    	display: flex;
    	flex-direction: row;
    	align-items: center;
    	text-align: left;
    	gap: 14px;
    	flex: 1;
    	min-width: 0;
    }
    .futsoc-child-card-summary-photo {
    	width: 72px;
    	height: 72px;
    	border-radius: 50%;
    	overflow: hidden;
    	flex: 0 0 72px;
    	background: #f1f1f1;
    }
	.futsoc-child-card-summary-photo img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}
	.futsoc-child-card-summary-name {
		font-size: 17px;
		font-weight: 700;
		line-height: 1.2;
	}
	.futsoc-child-avatar {
		width: 90px;
		height: 90px;
		border-radius: 12px;
		overflow: hidden;
		margin-bottom: 12px;
	}
	.futsoc-child-avatar img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}
	.futsoc-child-actions {
		display: flex;
		align-items: center;
		margin: 15px 0 0 0;
		flex-wrap: wrap;
	}
	.futsoc-delete-child-link {
		background: none;
		border: none;
		padding: 0;
		margin: 0;
		color: #777;
		text-decoration: underline;
		cursor: pointer;
		font-size: 13px;
		line-height: 1.2;
	}
	.futsoc-delete-child-link:hover {
		color: #c0392b;
	}
	.futsoc-child-points {
		margin: 14px 0 8px;
		padding: 10px 12px;
		background: #f8f9fb;
		border: 1px solid #e3e7ee;
		border-radius: 8px;
	}
	.futsoc-child-badges {
		margin: 10px 0 14px;
		padding: 10px 12px;
		background: #fcfcfc;
		border: 1px solid #e9e9e9;
		border-radius: 8px;
	}
	.futsoc-child-badges img {
		height: 75px;
		width: auto;
		max-width: 100%;
		object-fit: contain;
		margin: 5px;
	}
    .futsoc-dashboard-section {
    	background: #fff;
    	border: 1px solid #e6e6e6;
    	border-radius: 8px;
    	padding: 14px;
    	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    }
    
    .futsoc-dashboard-section h3 {
    	margin-top: 0 !important;
    }
    
    .futsoc-dashboard-section .tribe-events-widget-events-list {
    	margin-bottom: 0 !important;
    }
    .tribe-events-calendar-series-archive__link {
    	display: none;
    }
    .tribe-events-calendar-list__event-title-link,
    .tribe-events-calendar-list__event-title-link:hover,
    .tribe-events-calendar-list__event-title-link:focus {
    	pointer-events: none;
    	cursor: default;
    	text-decoration: none !important;
    	color: inherit !important;
    }


    /* FUTSOC OS - My Players */
    .futsoc-account-page-actions{
        display:flex !important;
        justify-content:flex-end !important;
        align-items:center !important;
        margin:0 0 12px !important;
    }
    .futsoc-child-list{
        display:flex !important;
        flex-direction:column !important;
        gap:0 !important;
        border:1px solid #dfe3e6 !important;
        background:#fff !important;
    }
    .futsoc-child-card{
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        border-bottom:1px solid #e4e6e8 !important;
        border-left:5px solid #111 !important;
        background:#fff !important;
        cursor:default !important;
    }
    .futsoc-child-card:last-child{
        border-bottom:0 !important;
    }
    .futsoc-child-card-header{
        min-height:82px !important;
        padding:11px 13px !important;
        gap:12px !important;
        flex-wrap:nowrap !important;
        cursor:default !important;
    }
    .futsoc-child-card-summary{
        gap:12px !important;
    }
    .futsoc-child-card-summary-photo{
        width:56px !important;
        height:56px !important;
        flex:0 0 56px !important;
        overflow:hidden !important;
        background:#f0f1f2 !important;
        border:1px solid #e2e4e6 !important;
    }
    .futsoc-child-card-summary-photo img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }
    .futsoc-child-card-summary-name{
        font-size:17px !important;
        font-weight:700 !important;
        line-height:1.15 !important;
        color:#222 !important;
    }
    div[id^="futsoc-child-details-"]{
        margin:0 !important;
        padding:0 14px 15px !important;
        border-top:1px solid #eceeef !important;
        background:#fafafa !important;
    }
    div[id^="futsoc-child-details-"] > .futsoc-upload-form{
        margin:12px 0 0 !important;
        padding:12px 13px !important;
        border:1px solid #e1e4e6 !important;
        background:#fff !important;
    }
    .futsoc-upload-form label:first-of-type{
        margin-bottom:4px !important;
        font-size:13px !important;
        color:#555 !important;
    }
    .futsoc-upload-link{
        margin-top:5px !important;
        font-size:13px !important;
    }
    .futsoc-child-badges,
    .futsoc-child-points{
        margin:12px 0 0 !important;
        padding:12px 13px !important;
        border:1px solid #e1e4e6 !important;
        background:#fff !important;
    }
    div[id^="futsoc-child-details-"] > p{
        display:grid !important;
        grid-template-columns:minmax(145px, 190px) 1fr !important;
        gap:12px !important;
        margin:0 !important;
        padding:10px 2px !important;
        border-bottom:1px solid #e7e9ea !important;
        font-size:14px !important;
        line-height:1.35 !important;
    }
    div[id^="futsoc-child-details-"] > p strong{
        color:#555 !important;
    }
    .futsoc-child-actions{
        display:flex !important;
        justify-content:flex-end !important;
        gap:8px !important;
        margin:14px 0 0 !important;
        padding-top:12px !important;
        border-top:1px solid #dfe3e6 !important;
    }
    .futsoc-child-actions .um-button{
        width:auto !important;
        min-width:0 !important;
        margin:0 !important;
        padding:8px 14px !important;
    }
    .futsoc-add-child-form{
        margin:0 0 14px !important;
        padding:16px !important;
        border:1px solid #dfe3e6 !important;
        background:#fafafa !important;
    }
    .futsoc-add-child-form form,
    div[id^="futsoc-edit-child-"] form{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px 16px !important;
    }
    .futsoc-add-child-form form > p,
    div[id^="futsoc-edit-child-"] form > p{
        margin:0 !important;
    }
    .futsoc-add-child-form input,
    .futsoc-add-child-form select,
    .futsoc-add-child-form textarea,
    div[id^="futsoc-edit-child-"] input,
    div[id^="futsoc-edit-child-"] select,
    div[id^="futsoc-edit-child-"] textarea{
        max-width:none !important;
        width:100% !important;
        box-sizing:border-box !important;
    }
    #child_medical_details_wrapper,
    .futsoc-add-child-form form > p:last-child,
    div[id^="futsoc-edit-child-"] form > p:last-child{
        grid-column:1 / -1 !important;
    }
    /* Team Management-style player profile */
    .futsoc-account-page-actions .futsoc-account-action-button,
    #futsoc-add-child-toggle{
        width:100% !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        background:#ff1616 !important;
        color:#000 !important;
        border:0 !important;
        min-height:52px !important;
        font-weight:700 !important;
        text-align:center !important;
    }
    #futsoc-add-child-toggle:hover,
    #futsoc-add-child-toggle:focus{
        background:#d91414 !important;
        color:#000 !important;
    }
    div[id^="futsoc-child-details-"]{
        padding:16px !important;
        background:#fafafa !important;
    }
    .futsoc-player-upload-grid{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:14px !important;
        margin-bottom:14px !important;
    }
    div[id^="futsoc-child-details-"] > .futsoc-player-upload-grid .futsoc-upload-form{
        margin:0 !important;
        min-height:112px !important;
        padding:14px !important;
        border:1px solid #dfe3e6 !important;
        border-radius:0 !important;
        background:#fff !important;
        box-shadow:none !important;
        box-sizing:border-box !important;
    }
    .futsoc-player-profile-section{
        margin-top:14px !important;
        padding:16px !important;
        border:1px solid #dfe3e6 !important;
        background:#fff !important;
    }
    .futsoc-player-profile-section-title{
        margin:0 0 14px !important;
        font-size:16px !important;
        font-weight:800 !important;
        color:#111 !important;
        text-transform:uppercase !important;
    }
    .futsoc-player-profile-grid{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:12px !important;
    }
    .futsoc-player-profile-field{
        min-width:0 !important;
        padding:13px 14px !important;
        background:#f4f6f5 !important;
        border:0 !important;
    }
    .futsoc-player-profile-field.is-wide{
        grid-column:1 / -1 !important;
    }
    .futsoc-family-email-field{
        grid-column:span 2 !important;
    }
	.futsoc-family-dashboard-access-field{
		grid-column:1 / -1 !important;
	}
    .futsoc-player-profile-label{
        display:block !important;
        margin-bottom:5px !important;
        font-size:10px !important;
        line-height:1.2 !important;
        font-weight:800 !important;
        letter-spacing:.04em !important;
        text-transform:uppercase !important;
        color:#7b8480 !important;
    }
    .futsoc-player-profile-value{
        display:block !important;
        overflow-wrap:anywhere !important;
        font-size:14px !important;
        line-height:1.3 !important;
        font-weight:600 !important;
        color:#111 !important;
    }
    .futsoc-player-badges-wrap{
        margin-top:12px !important;
        padding:13px 14px !important;
        background:#f4f6f5 !important;
    }
    .futsoc-player-badges-wrap .futsoc-child-badges{
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
    }
    .futsoc-player-badges-wrap .futsoc-child-badges p{
        margin:0 0 6px !important;
    }
    .futsoc-player-profile-badges .futsoc-child-badges{
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
    }
    .futsoc-player-profile-badges .futsoc-child-badges > p:first-child{
        display:none !important;
    }
    .futsoc-player-profile-badges .futsoc-child-badges p{
        margin:0 !important;
    }
    .futsoc-child-actions{
        border-top:0 !important;
        padding-top:0 !important;
    }
    .futsoc-inline-player-form:not(.is-editing) .futsoc-inline-edit-control,
    .futsoc-inline-player-form:not(.is-editing) input.futsoc-inline-edit-control,
    .futsoc-inline-player-form:not(.is-editing) select.futsoc-inline-edit-control{
        display:none !important;
    }
    .futsoc-inline-player-form:not(.is-editing) .futsoc-inline-save-player{
        display:none !important;
    }
    .futsoc-inline-player-form.is-editing .futsoc-inline-view-value{
        display:none !important;
    }
    .futsoc-inline-player-form.is-editing .futsoc-inline-edit-control{
        display:block !important;
    }
    .futsoc-inline-player-form .futsoc-inline-edit-actions{
        display:flex !important;
        justify-content:flex-start !important;
    }
    .futsoc-inline-player-form input.futsoc-inline-edit-control,
    .futsoc-inline-player-form select.futsoc-inline-edit-control,
    .futsoc-inline-player-form .futsoc-inline-medical-controls select,
    .futsoc-inline-player-form .futsoc-inline-medical-controls textarea{
        width:100% !important;
        max-width:none !important;
        box-sizing:border-box !important;
        margin:0 !important;
        border-radius:0 !important;
    }
    .futsoc-inline-medical-controls{
        gap:8px;
    }
    .futsoc-inline-player-form.is-editing .futsoc-inline-medical-controls{
        display:grid !important;
    }
    .futsoc-inline-edit-actions{
        align-items:center;
        gap:10px;
        margin-top:12px;
    }
    .futsoc-inline-edit-actions .um-button{
        width:auto !important;
        height:40px !important;
        min-height:40px !important;
        margin:0 !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        box-sizing:border-box !important;
		cursor: pointer !important;
    }
    @media (max-width:900px){
        .futsoc-player-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    }
    @media (max-width:700px){
        .futsoc-child-card-header{min-height:72px !important;}
        .futsoc-child-card-summary-photo{width:48px !important;height:48px !important;flex-basis:48px !important;}
        .futsoc-player-upload-grid,
        .futsoc-player-profile-grid{grid-template-columns:1fr !important;}
        .futsoc-player-profile-field.is-wide,
        .futsoc-family-email-field{grid-column:auto !important;}
        .futsoc-add-child-form form,
        div[id^="futsoc-edit-child-"] form{grid-template-columns:1fr !important;}
    }


/* ===== Extracted block 5 ===== */
.futsoc-event-action-button {
    	display: inline-flex !important;
    	align-items: center;
    	justify-content: center;
    	width: auto !important;
    	min-width: 0 !important;
    	margin: 0 !important;
    }
	.futsoc-family-contact-card {
		background:#fff;
		border:1px solid #e6e6e6;
		padding:16px;
		margin:0 0 14px;
	}
	.futsoc-family-contact-grid {
		display:grid;
		grid-template-columns:repeat(2, minmax(180px, 1fr));
		gap:12px;
	}
	.futsoc-family-contact-grid input[type="text"],
	.futsoc-family-contact-grid input[type="email"] {
		width:100%;
		max-width:100%;
	}
	.futsoc-family-player-list label {
		display:block;
		margin:5px 0;
	}
	.futsoc-family-contact-actions {
		display:flex;
		gap:10px;
		flex-wrap:wrap;
		align-items:center;
		margin-top:12px;
	}
	.futsoc-family-delete-link {
		background:none;
		border:0;
		padding:0;
		color:#777;
		text-decoration:underline;
		cursor:pointer;
		font-size:13px;
	}
	.futsoc-family-delete-link:hover {
		color:#c0392b;
	}
	@media (max-width:700px) {
		.futsoc-family-contact-grid {
			grid-template-columns:1fr;
		}
	}


    /* FUTSOC OS - Family Contacts */
    .futsoc-family-contact-card{
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        border-bottom:1px solid #e4e6e8 !important;
        border-left:5px solid #111 !important;
        background:#fff !important;
        box-shadow:none !important;
    }
    .futsoc-family-contact-card + .futsoc-family-contact-card{
        margin-top:0 !important;
    }
    .futsoc-family-contact-card .futsoc-child-card-header{
        min-height:78px !important;
        padding:11px 13px !important;
        flex-wrap:nowrap !important;
    }
    .futsoc-family-contact-card .futsoc-child-card-summary-photo{
        width:52px !important;
        height:52px !important;
        flex:0 0 52px !important;
        border:1px solid #e2e4e6 !important;
        background:#f0f1f2 !important;
        font-size:20px !important;
    }
    div[id^="futsoc-family-contact-details-"]{
        margin:0 !important;
        padding:16px !important;
        border-top:1px solid #eceeef !important;
        background:#fff !important;
    }
    div[id^="futsoc-family-contact-details-"] > p{
        margin:0 !important;
        padding:10px 0 !important;
        border-bottom:1px solid #e5e7e9 !important;
        line-height:1.75 !important;
        font-size:14px !important;
    }
    .futsoc-family-contact-details-grid{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:12px !important;
    }
    .futsoc-family-contact-detail{
        min-width:0 !important;
        padding:13px 14px !important;
        background:#f4f6f5 !important;
    }
    .futsoc-family-contact-detail.is-wide{grid-column:1 / -1 !important;}
    .futsoc-family-contact-detail-label{
        display:block !important;
        margin-bottom:5px !important;
        font-size:10px !important;
        line-height:1.2 !important;
        font-weight:800 !important;
        letter-spacing:.04em !important;
        text-transform:uppercase !important;
        color:#7b8480 !important;
    }
    .futsoc-family-contact-detail-value{
        display:block !important;
        overflow-wrap:anywhere !important;
        font-size:14px !important;
        line-height:1.3 !important;
        font-weight:600 !important;
        color:#111 !important;
    }
    .futsoc-family-contact-profile-section{
        margin:0 !important;
        padding:16px !important;
        border:1px solid #dfe3e6 !important;
        background:#fff !important;
    }
    .futsoc-inline-family-contact-form:not(.is-editing) .futsoc-family-inline-edit-control,
    .futsoc-inline-family-contact-form:not(.is-editing) .futsoc-family-inline-save{
        display:none !important;
    }
    .futsoc-inline-family-contact-form.is-editing .futsoc-family-inline-view-value{
        display:none !important;
    }
    .futsoc-inline-family-contact-form.is-editing .futsoc-family-inline-edit-control{
        display:block !important;
    }
    .futsoc-inline-family-contact-form input.futsoc-family-inline-edit-control{
        width:100% !important;
        max-width:none !important;
        box-sizing:border-box !important;
        margin:0 !important;
        border-radius:0 !important;
    }
    .futsoc-inline-family-contact-form .futsoc-family-email-toggle{
        margin:0 !important;
        padding:8px 0 !important;
        font-weight:600 !important;
    }
    .futsoc-family-inline-edit-actions{
        display:flex !important;
        align-items:center !important;
        gap:10px !important;
        margin-top:12px !important;
    }
    .futsoc-family-inline-edit-actions .um-button{
        width:auto !important;
        min-width:0 !important;
        height:40px !important;
        min-height:40px !important;
        margin:0 !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        box-sizing:border-box !important;
        cursor:pointer !important;
    }
    .futsoc-family-contact-top-action{margin:18px 0 !important;}
    .futsoc-family-contact-top-action .futsoc-account-action-button{margin:0 !important;}
    .futsoc-family-contact-actions{
        justify-content:flex-end !important;
        margin-top:12px !important;
        padding-top:0 !important;
        border-top:0 !important;
    }
    .futsoc-family-contact-actions .um-button{
        width:auto !important;
        min-width:0 !important;
        margin:0 !important;
        padding:8px 14px !important;
    }
    #futsoc-add-family-contact-form,
    div[id^="futsoc-edit-family-contact-"]{
        margin:0 0 14px !important;
        padding:16px !important;
        border:1px solid #dfe3e6 !important;
        background:#fafafa !important;
    }
    .futsoc-family-contact-grid{
        gap:12px 16px !important;
    }
    .futsoc-family-contact-grid p{
        margin:0 !important;
    }
    .futsoc-family-contact-grid input{
        box-sizing:border-box !important;
    }
    .futsoc-family-player-list{
        display:flex !important;
        flex-wrap:wrap !important;
        gap:8px !important;
        margin-top:8px !important;
    }
    .futsoc-family-player-list label{
        margin:0 !important;
        padding:7px 10px !important;
        border:1px solid #e0e3e5 !important;
        background:#fff !important;
    }
    @media (max-width:700px){
        .futsoc-family-contact-card .futsoc-child-card-summary-photo{width:46px !important;height:46px !important;flex-basis:46px !important;}
        .futsoc-family-player-list{flex-direction:column !important;}
        .futsoc-family-contact-details-grid{grid-template-columns:1fr !important;}
        .futsoc-family-contact-detail.is-wide{grid-column:auto !important;}
    }


/* ===== Extracted block 6 ===== */
.futsoc-family-calendar-date-weekday{
				margin-top:3px;
				font-size:11px;
				font-weight:700;
				line-height:1;
				text-transform:uppercase;
				color:#777;
			}

			.futsoc-family-calendar-filters{
				display:flex;
				align-items:flex-end;
				gap:12px;
				padding:14px;
				border:1px solid #e5e5e5;
				background:#f8f8f8;
			}

			.futsoc-family-calendar-filter{
				display:flex;
				flex-direction:column;
				gap:5px;
				min-width:180px;
			}

			.futsoc-family-calendar-filter label{
				font-size:11px;
				font-weight:700;
				text-transform:uppercase;
				color:#666;
			}

			.futsoc-family-calendar-filter select{
				width:100%;
				min-height:40px;
				padding:7px 10px;
				border:1px solid #d7d7d7;
				background:#fff;
				color:#111;
				font-size:14px;
				cursor:pointer;
			}

			@media (max-width:600px){

				.futsoc-family-calendar-filters{
					flex-direction:column;
					align-items:stretch;
				}

				.futsoc-family-calendar-filter{
					width:100%;
					min-width:0;
				}

			}

            .futsoc-family-calendar-date-detail{
            	display:flex;
            	flex-direction:column;
            	gap:3px;
            	line-height:1.25;
            }

            .futsoc-account-calendar{
            	display:flex;
            	flex-direction:column;
            	gap:14px;
            	margin-top:22px;
            }

			.futsoc-family-calendar-month{
				border:1px solid #e5e5e5;
				background:#fff;
			}
			
            .futsoc-family-calendar-month-arrow{
            	display:block;
            	width:8px;
            	height:8px;
            	margin-left:auto;
            	margin-right:3px;
            	flex:0 0 auto;
            	border-top:2px solid #222;
            	border-left:2px solid #222;
            	transform:rotate(45deg);
            	transition:transform .18s ease;
            }
                        
            .futsoc-family-calendar-month.is-collapsed
            .futsoc-family-calendar-month-arrow{
            	transform:rotate(225deg);
            }

            .futsoc-family-calendar-month-header{
            	display:flex;
            	align-items:center;
            	justify-content:space-between;
            	width:100%;
            	padding:14px 16px;
            	border:0;
            	border-bottom:1px solid #e5e5e5;
            	background:#f6f6f6;
            	color:#111;
            	text-align:left;
            	cursor:pointer;
            }
            
            .futsoc-family-calendar-month-header > div{
            	display:flex;
            	align-items:baseline;
            	gap:8px;
            }
            
            .futsoc-family-calendar-month-header h3{
            	margin:0;
            	font-size:17px;
            	font-weight:700;
            }
            
            .futsoc-family-calendar-month-header > div > span{
            	font-size:12px;
            	color:#777;
            }
            
            .futsoc-family-calendar-month-header > .dashicons{
            	transition:transform .18s ease;
            }
            
            .futsoc-family-calendar-month.is-collapsed
            .futsoc-family-calendar-month-header{
            	border-bottom:0;
            }
            
            .futsoc-family-calendar-month.is-collapsed
            .futsoc-family-calendar-month-header > .dashicons{
            	transform:rotate(-90deg);
            }
            
            .futsoc-family-calendar-month.is-collapsed
            .futsoc-family-calendar-month-items{
            	display:none;
            }

			.futsoc-family-calendar-month-items{
				display:flex;
				flex-direction:column;
			}

            .futsoc-family-calendar-item{
            	display:grid;
            	grid-template-columns:88px 1fr;
            	border-bottom:1px solid #e7e7e7;
            	border-left:5px solid #111111;
            	background:#fff;
            }

			.futsoc-family-calendar-item:last-child{
				border-bottom:0;
			}

			.futsoc-family-calendar-date{
				display:flex;
				flex-direction:column;
				align-items:center;
				justify-content:center;
				min-height:94px;
				padding:10px;
				border-right:1px solid #e7e7e7;
				background:#fafafa;
			}

			.futsoc-family-calendar-date-month{
				font-size:11px;
				font-weight:700;
				text-transform:uppercase;
				color:#777;
			}

            .futsoc-family-calendar-date-day{
            	margin-top:2px;
            	font-size:26px;
            	font-weight:700;
            	line-height:1;
            	color:#111;
            	white-space:nowrap;
            }
            
            .futsoc-family-calendar-date-range-separator{
            	font-size:15px;
            	font-weight:700;
            	line-height:1;
            	color:#999;
            	margin:2px 0;
            }

			.futsoc-family-calendar-content{
				padding:13px 16px;
			}

			.futsoc-family-calendar-type{
				display:block;
				margin-bottom:2px;
				font-size:11px;
				font-weight:700;
				text-transform:uppercase;
				color:#777;
			}

			.futsoc-family-calendar-title{
				margin:0;
				font-size:16px;
				font-weight:700;
				color:#111;
			}

			.futsoc-family-calendar-player{
				display:flex;
				align-items:center;
				margin-top:3px;
				font-size:12px;
				font-weight:600;
				color:#777;
			}

            .futsoc-family-calendar-details{
            	display:grid;
            	grid-template-columns:1fr 1fr 1fr;
            	align-items:center;
            	gap:18px;
            	margin-top:8px;
            	font-size:13px;
            	color:#555;
            }
            
            .futsoc-family-calendar-detail.is-date{
            	grid-column:1;
            }
            
            .futsoc-family-calendar-detail.is-time{
            	grid-column:2;
            }
            
            .futsoc-family-calendar-detail.is-location{
            	grid-column:3;
            }

            .futsoc-family-calendar-detail{
            	display:flex;
            	align-items:center;
            	gap:5px;
            	min-width:0;
            }

			.futsoc-family-calendar-detail .dashicons{
				width:16px;
				height:16px;
				font-size:16px;
			}

			.futsoc-family-calendar-detail a{
				color:inherit;
				text-decoration:none;
				font-weight:600;
			}

			.futsoc-family-calendar-detail a:hover{
				text-decoration:underline;
			}

			.futsoc-family-calendar-cancelled{
				opacity:.65;
			}

			.futsoc-family-calendar-cancelled
			.futsoc-family-calendar-title{
				text-decoration:line-through;
			}

			.futsoc-family-calendar-status{
				display:inline-flex;
				align-items:center;
				min-height:24px;
				padding:3px 8px;
				margin-left:8px;
				border:1px solid #ef9a9a;
				background:#fdecec;
				color:#c62828;
				font-size:11px;
				font-weight:700;
			}

			.futsoc-family-calendar-cancelled-reason{
				margin-top:8px;
				padding:7px 9px;
				border-left:3px solid #c62828;
				background:#fff6f6;
				color:#7f1d1d;
				font-size:12px;
				line-height:1.4;
			}

			.futsoc-family-calendar-empty{
				padding:22px;
				border:1px solid #e5e5e5;
				background:#fff;
				color:#666;
			}

			@media (max-width:600px){
			    .futsoc-family-calendar-details{
                	grid-template-columns:1fr;
                	gap:6px;
                }

				.futsoc-family-calendar-item{
					grid-template-columns:58px 1fr;
				}

				.futsoc-family-calendar-content{
					padding:12px;
				}

				.futsoc-family-calendar-date-day{
					font-size:24px;
				}
			}


/* ===== Extracted block 7 ===== */
.futsoc-dashboard-invitation-weekday{
			margin-top:3px;
			font-size:11px;
			font-weight:700;
			line-height:1;
			text-transform:uppercase;
			color:#777;
		}											


		@media (max-width:600px){

			.futsoc-dashboard-action-buttons{
				grid-template-columns:1fr !important;
			}

			.futsoc-dashboard-action-buttons .um-button{
				width:100% !important;
				box-sizing:border-box;
			}

		}
    
    	.futsoc-dashboard-invitation-list{
    		display:flex;
    		flex-direction:column;
    		border:1px solid #e5e5e5;
    		background:#fff;
    	}
    
    	.futsoc-dashboard-invitation{
    		display:grid;
    		grid-template-columns:72px minmax(0,1fr) auto;
    		min-height:94px;
    		border-bottom:1px solid #e7e7e7;
    		border-left:5px solid #111;
    		background:#fff;
    	}
    
    	.futsoc-dashboard-invitation:last-child{
    		border-bottom:0;
    	}
    
    	.futsoc-dashboard-invitation-date{
    		display:flex;
    		flex-direction:column;
    		align-items:center;
    		justify-content:center;
    		padding:8px;
    		border-right:1px solid #e7e7e7;
    		background:#fafafa;
    	}
    
    	.futsoc-dashboard-invitation-month{
    		font-size:10px;
    		font-weight:700;
    		text-transform:uppercase;
    		color:#777;
    	}
    
    	.futsoc-dashboard-invitation-day{
    		margin-top:2px;
    		font-size:25px;
    		font-weight:700;
    		line-height:1;
    		color:#111;
    	}
    
    	.futsoc-dashboard-invitation-content{
    		min-width:0;
    		padding:12px 14px;
    	}
    
    	.futsoc-dashboard-invitation-type{
    		display:block;
    		margin-bottom:2px;
    		font-size:10px;
    		font-weight:700;
    		text-transform:uppercase;
    		color:#777;
    	}
    
    	.futsoc-dashboard-invitation-title{
    		display:flex;
    		align-items:center;
    		flex-wrap:wrap;
    		gap:7px;
    		margin:0;
    		font-size:15px;
    		font-weight:700;
    		color:#111;
    	}

		.futsoc-dashboard-invitation.is-cancelled{
			opacity:.65;
		}

		.futsoc-dashboard-invitation.is-cancelled
		.futsoc-dashboard-invitation-title-text{
			text-decoration:line-through;
		}


		.futsoc-dashboard-invitation-cancelled-reason{
			margin-top:8px;
			padding:7px 9px;
			border-left:3px solid #c62828;
			background:#fff6f6;
			color:#7f1d1d;
			font-size:12px;
			line-height:1.4;
		}
    
    	.futsoc-dashboard-invitation-player{
    		margin-top:3px;
    		font-size:12px;
    		font-weight:600;
    		color:#666;
    	}
    
    	.futsoc-dashboard-invitation-details{
    		display:grid;
    		grid-template-columns:1fr 1fr 1fr;
    		gap:14px;
    		margin-top:7px;
    		font-size:12px;
    		color:#555;
    	}
    
    	.futsoc-dashboard-invitation-location{
    		font-weight:600;
    	}
    
    	.futsoc-dashboard-invitation-location a{
    		color:inherit;
    		text-decoration:none;
    	}
    
    	.futsoc-dashboard-invitation-location a:hover{
    		text-decoration:underline;
    	}
    
    	.futsoc-dashboard-invitation-side{
    		display:flex;
    		flex-direction:column;
    		align-items:flex-end;
    		justify-content:center;
    		gap:7px;
    		padding:10px 12px;
    	}
    
    	.futsoc-dashboard-invitation-status{
    		padding:5px 9px;
    		border:1px solid #d7d7d7;
    		background:#f3f3f3;
    		font-size:11px;
    		font-weight:700;
    		color:#666;
    	}
    
    	.futsoc-dashboard-invitation-actions{
    		display:flex;
    		align-items:center;
    		justify-content:flex-end;
    		gap:6px;
    	}

    	@media (max-width:800px){

			.elementor-7821 .elementor-element.elementor-element-cf7593a{
				--padding-left: 0px !important;
				--padding-right: 0px !important;
			}

			.futsoc-invitation-date{
				align-self:stretch !important;
				height:auto !important;
				min-height:100% !important;
			}

			.futsoc-invitation{
				align-items:stretch !important;
			}

			.futsoc-invitation-date{
				display:flex !important;
				flex-direction:column !important;
				justify-content:center !important;
			}

			.futsoc-invitation-card{
				grid-template-columns:72px minmax(0,1fr) !important;
				grid-template-rows:auto auto !important;
			}

			.futsoc-invitation-date{
				grid-column:1 !important;
				grid-row:1 / 3 !important;
			}

			.futsoc-invitation-content{
				grid-column:2 !important;
				grid-row:1 !important;
			}

			.futsoc-invitation-side{
				grid-column:2 !important;
				grid-row:2 !important;
			}
    
    		.futsoc-dashboard-invitation{
    			grid-template-columns:64px minmax(0,1fr);
    		}
    
    		.futsoc-dashboard-invitation-side{
    			grid-column:2;
    			align-items:flex-start;
    			padding:0 12px 12px;
    		}
    
    		.futsoc-dashboard-invitation-details{
				display:flex !important;
				flex-direction:column !important;
				align-items:flex-start !important;
				gap:2px !important;
				margin-top:7px !important;
			}

			.futsoc-dashboard-invitation-details > div{
				display:block !important;
				width:100% !important;
				margin:0 !important;
				padding:0 !important;
			}

			/* Calendar item content */
			.futsoc-dashboard-invitation-content{
				min-width: 0;
			}

			.futsoc-family-calendar-details{
				display:flex !important;
				flex-direction:column !important;
				align-items:flex-start !important;
				gap:4px !important;
				margin-top:8px !important;
			}

			.futsoc-family-calendar-detail{
				display:flex !important;
				width:100% !important;
				margin:0 !important;
				padding:0 !important;
			}

			.futsoc-family-calendar-detail.is-date,
			.futsoc-family-calendar-detail.is-time,
			.futsoc-family-calendar-detail.is-location{
				grid-column:auto !important;
			}

			.futsoc-family-calendar-detail.is-location{
				align-items:flex-start !important;
			}

			.futsoc-family-calendar-date-detail{
				width:100% !important;
			}

    	}



/* ---------------------------------------------------------
 * Parent Dashboard canonical Save / Cancel buttons
 * One shared definition for Players and Family Contacts.
 * --------------------------------------------------------- */
.um-account .futsoc-parent-save-button,
.um-account .futsoc-parent-cancel-button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:34px !important;
    margin:0 !important;
    padding:7px 12px !important;
    box-sizing:border-box !important;
    border-radius:0 !important;
    box-shadow:none !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    cursor:pointer !important;
    transition:background-color .15s ease, color .15s ease, border-color .15s ease !important;
}

.um-account .futsoc-parent-save-button{
    background:red !important;
    border:1px solid red !important;
    color:black !important;
}

.um-account .futsoc-parent-save-button:hover,
.um-account .futsoc-parent-save-button:focus{
    background:darkred !important;
    border-color:darkred !important;
    color:black !important;
}

.um-account .futsoc-parent-cancel-button{
    background:#f3f3f3 !important;
    border:1px solid #d7d7d7 !important;
    color:#111 !important;
}

.um-account .futsoc-parent-cancel-button:hover,
.um-account .futsoc-parent-cancel-button:focus{
    background:#ddd !important;
    border-color:#d7d7d7 !important;
    color:#111 !important;
}

/* =========================================================
   Ultimate Member account styles migrated from FUTSOC Theme
   Scoped to the Parent Dashboard / UM account area.
   ========================================================= */
.um-account .um-account-main {
    padding-left: 30px !important;
    padding-right: 30px !important;
}
.um-account .um-account-side li {
    margin-bottom: 0 !important;
}
.um-account .um-account-side li a {
    color: red !important;
    background: #969696 !important;
    padding: 20px 0 !important;
}
.um-account .um-account-side li a:hover {
    color: black !important;
    background: #676767 !important;
}
.um-account .um-account-side li a span.um-account-icon {
    border: 0 !important;
}
.um-account .um-account-title,
.um-account .um-account-link,
.um-account .um-account-icon {
    color: black !important;
    font-family: Amboy !important;
    font-size: 1.25rem !important;
}
.um-account .um-account-arrow {
    display: none !important;
}
.um-account .um-account-main div.um-account-heading,
.um-account .um-account-name > a {
    font-family: Amboy !important;
    font-size: 1.5rem !important;
}
.um-account .um-account-name > div > a,
.um-account .um-account-name a:hover {
    color: red !important;
}
.um-account .um-field-label,
.um-account .um-field-area,
.um-account .um-woo-form.woocommerce,
.um-account .select2-container,
.um-account .um-form input[type=password],
.um-account .um-form input[type=search],
.um-account .um-form input[type=tel],
.um-account .um-form input[type=text],
.um-account .um-form textarea,
.um-account .um-account-name > div > a {
    font-family: Poppins !important;
}
.um-account .um-button,
.um-account input[type=submit].um-mycred-send-points.um-button {
    background: red !important;
    font-family: Amboy !important;
    color: black !important;
    border-radius: 0 !important;
    font-size: 1.25rem !important;
    padding: 16px 20px !important;
}
.um-account .um-form input[type=submit].um-button:hover {
    background: darkred !important;
}

/* Dashboard WhatsApp action keeps its own brand color after the generic UM button rule. */
.um-account .futsoc-whatsapp-button {
    background:#25D366 !important;
    border-radius:0 !important;
    transition:background-color .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease !important;
}
.um-account .futsoc-whatsapp-button:hover,
.um-account .futsoc-whatsapp-button:focus {
    background:#1ebe5d !important;
    color:#000 !important;
}
.um-account .um-field .select2-container--default .select2-selection--single .select2-selection__rendered,
.um-account .um-search-filter .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: normal !important;
}

/* Parent Dashboard styles migrated from the old theme stylesheet. */
.um-account .futsoc-child-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.um-account .futsoc-child-badges img {
    max-height: 75px !important;
    width: auto;
    object-fit: contain;
    margin: 5px;
}
.um-account .futsoc-toggle-child-btn {
    cursor: pointer;
    background-color: #ccc !important;
    transition: all 0.25s ease-in-out;
}
.um-account .futsoc-toggle-child-btn:hover {
    background-color: #aaa !important;
}
.um-account #futsoc-add-child-toggle,
.um-account #futsoc-add-family-contact-toggle,
.um-account #futsoc-uniform {
    cursor: pointer;
    background-color: red !important;
    transition: all 0.25s ease-in-out;
}
.um-account #futsoc-add-child-toggle:hover,
.um-account #futsoc-add-family-contact-toggle:hover,
.um-account #futsoc-uniform:hover {
    background-color: darkred !important;
}
.um-account #futsoc-uniform a {
    font-family: Amboy;
    color: black !important;
}
.um-account #um_account_submit_my_children,
.um-account .um-account-meta {
    display: none;
}


/* =========================================================
   Canonical compact Parent Dashboard inline action buttons.
   Keep Player / Family Edit, Save, and Cancel identical in
   dimensions to the compact Invitation Confirm / Decline UI.
   This block intentionally comes after migrated UM theme rules.
   ========================================================= */
.um-account .futsoc-parent-save-button,
.um-account .futsoc-parent-cancel-button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:34px !important;
    margin:0 !important;
    padding:7px 12px !important;
    border-radius:0 !important;
    box-shadow:none !important;
    font-family:Amboy !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    cursor:pointer !important;
    transition:all .15s ease !important;
}

.um-account .futsoc-parent-save-button{
    background:red !important;
    border:1px solid red !important;
    color:black !important;
}

.um-account .futsoc-parent-save-button:hover,
.um-account .futsoc-parent-save-button:focus{
    background:darkred !important;
    border-color:darkred !important;
    color:black !important;
}

.um-account .futsoc-parent-cancel-button{
    background:#f3f3f3 !important;
    border:1px solid #d7d7d7 !important;
    color:#111 !important;
}

.um-account .futsoc-parent-cancel-button:hover,
.um-account .futsoc-parent-cancel-button:focus{
    background:#ddd !important;
    border-color:#d7d7d7 !important;
    color:#111 !important;
}

/* ---------------------------------------------------------
 * My Orders readability + Team Management-style status chips
 * --------------------------------------------------------- */
.um-account .um-woo-orders table.my_account_orders tbody td,
.um-account .um-woo-orders table.my_account_orders tbody td a,
.um-account .um-woo-orders table.my_account_orders .order-item,
.um-account .um-woo-orders table.my_account_orders .order-total {
	color:#4b4f52 !important;
}

.um-account .um-woo-orders table.my_account_orders .order-total,
.um-account .um-woo-orders table.my_account_orders .order-total * {
	color:#4b4f52 !important;
}

.um-account .futsoc-order-status-chip {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:110px;
	padding:6px 10px;
	font-size:11px;
	font-weight:700;
	line-height:1.2;
	white-space:nowrap;
	box-sizing:border-box;
}

.um-account .futsoc-order-status-chip.is-completed,
.um-account .futsoc-order-status-chip.is-processing {
	background:#e7f7e7;
	color:#24632d;
}

.um-account .futsoc-order-status-chip.is-cancelled {
	background:#eee;
	color:#555;
}

.um-account .futsoc-order-status-chip.is-refunded,
.um-account .futsoc-order-status-chip.is-failed {
	background:#fde8e8;
	color:#8a2f2f;
}

.um-account .futsoc-order-status-chip.is-pending-payment,
.um-account .futsoc-order-status-chip.is-on-hold {
	background:#fff3d6;
	color:#7a5a14;
}

/* Replace the browser-native title tooltip with the site's Poppins tooltip. */
.um-account td.order-detail .um-woo-view-order {
	position:relative !important;
}

.um-account td.order-detail .um-woo-view-order::after {
	content:attr(data-futsoc-tooltip);
	position:absolute;
	left:50%;
	bottom:calc(100% + 8px);
	transform:translateX(-50%);
	z-index:20;
	display:block;
	padding:6px 8px;
	background:#222;
	color:#fff;
	font-family:Poppins, sans-serif;
	font-size:11px;
	font-weight:500;
	line-height:1.2;
	white-space:nowrap;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .15s ease;
}

.um-account td.order-detail .um-woo-view-order:hover::after,
.um-account td.order-detail .um-woo-view-order:focus::after {
	opacity:1;
	visibility:visible;
}

/* ---------------------------------------------------------
 * My Orders: readable dates + order-detail popup polish
 * --------------------------------------------------------- */
.um-account .um-woo-form .order-date time {
	color:#4b4f52 !important;
}

/* Keep Ultimate Member's order popup visually aligned with Team Management. */
.um-popup .woocommerce,
.um-popup .woocommerce * {
	font-family:Poppins, sans-serif;
}

.um-popup .woocommerce {
	color:#4b4f52;
}

.um-popup .woocommerce > p:first-of-type {
	margin:0 0 16px !important;
	padding:12px 14px !important;
	background:#f5f6f6 !important;
	border:1px solid #dfe3e6 !important;
	color:#4b4f52 !important;
}

.um-popup .woocommerce-order-details,
.um-popup .woocommerce-customer-details {
	margin:0 0 16px !important;
	padding:0 !important;
}

.um-popup .woocommerce-order-details table,
.um-popup .woocommerce-customer-details address {
	border:1px solid #dfe3e6 !important;
	border-radius:0 !important;
	box-shadow:none !important;
	background:#fff !important;
}

.um-popup .woocommerce-order-details table {
	width:100% !important;
	border-collapse:collapse !important;
}

.um-popup .woocommerce-order-details table thead th,
.um-popup .woocommerce-order-details table tfoot th {
	background:#f3f4f4 !important;
	color:#555 !important;
	font-size:11px !important;
	font-weight:800 !important;
	text-transform:uppercase;
	letter-spacing:.03em;
}

.um-popup .woocommerce-order-details table th,
.um-popup .woocommerce-order-details table td {
	padding:10px 12px !important;
	border:0 !important;
	border-bottom:1px solid #e5e8ea !important;
	color:#4b4f52 !important;
	vertical-align:top !important;
}

.um-popup .woocommerce-order-details table tr:last-child th,
.um-popup .woocommerce-order-details table tr:last-child td {
	border-bottom:0 !important;
}

.um-popup .woocommerce-order-details table tbody tr:nth-child(even) td,
.um-popup .woocommerce-order-details table tfoot tr:nth-child(odd) th,
.um-popup .woocommerce-order-details table tfoot tr:nth-child(odd) td {
	background:#f8f9f9 !important;
}

.um-popup .woocommerce-order-details table strong,
.um-popup .woocommerce-order-details table b {
	color:#222 !important;
}

.um-popup .woocommerce-customer-details address {
	margin:0 !important;
	padding:14px !important;
	font-style:normal !important;
	line-height:1.55 !important;
	color:#4b4f52 !important;
}

.um-popup .woocommerce-order-details__title,
.um-popup .woocommerce-column__title {
	margin:0 !important;
	padding:10px 12px !important;
	background:#f3f4f4 !important;
	border:1px solid #dfe3e6 !important;
	border-bottom:0 !important;
	font-size:13px !important;
	font-weight:800 !important;
	color:#222 !important;
}

.um-woo-order-head,
.um-woo-order-body {
    padding: 20px !important;
}

/* =========================================================
   FUTSOC Ultimate Member login page.
   Matches the Parent Dashboard square red / neutral gray UI.
   ========================================================= */
.um.um-login .um-form {
    font-family: Poppins, Arial, Helvetica, sans-serif;
}

.um.um-login .um-field-label label {
    color: #333;
    font-weight: 700;
}

.um.um-login .um-form input[type="text"],
.um.um-login .um-form input[type="password"] {
    min-height: 44px;
    border: 1px solid #dfe3e6;
    border-radius: 0;
    background: #fff;
    color: #222;
    box-shadow: none;
}

.um.um-login .um-form input[type="text"]:focus,
.um.um-login .um-form input[type="password"]:focus {
    border-color: #9aa0a6;
    background: #fff;
    box-shadow: none;
}

.um.um-login .um-col-alt {
    margin-top: 20px;
}

.um.um-login .um-left.um-half,
.um.um-login .um-right.um-half {
    width: calc(50% - 5px);
}

.um.um-login input#um-submit-btn.um-button,
.um.um-login a.um-button.um-alt {
    min-height: 48px;
    margin: 0;
    padding: 13px 18px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font-family: Amboy, Poppins, Arial, Helvetica, sans-serif;
    font-size: 1.15rem;
    line-height: 1.15;
    text-align: center;
    text-decoration: none;
    color: #000;
    transition: background-color .15s ease, color .15s ease;
}

.um.um-login input#um-submit-btn.um-button {
    background: #ff1010;
}

.um.um-login input#um-submit-btn.um-button:hover,
.um.um-login input#um-submit-btn.um-button:focus {
    background: #b30000;
    color: #000;
}

.um.um-login a.um-button.um-alt {
    background: #e6e8ea;
}

.um.um-login a.um-button.um-alt:hover,
.um.um-login a.um-button.um-alt:focus {
    background: #cfd2d4;
    color: #000;
}

.um.um-login .um-field-checkbox-option,
.um.um-login .um-link-alt {
    color: #666;
}

.um.um-login .um-link-alt:hover,
.um.um-login .um-link-alt:focus {
    color: #111;
}

@media (max-width: 520px) {
    .um.um-login .um-left.um-half,
    .um.um-login .um-right.um-half {
        width: 100%;
        float: none;
    }

    .um.um-login .um-right.um-half {
        margin-top: 10px;
    }
}


/* Keep FUTSOC login controls square over Ultimate Member defaults. */
.um-login .um-form input,
.um-login .um-form button,
.um-login .um-form .um-button,
.um-login .um-form .um-alt,
.um-login .um-form a.um-button {
    border-radius: 0 !important;
}

/* =========================================================
   FUTSOC Ultimate Member password reset page.
   Matches the login / Parent Dashboard square red UI.
   ========================================================= */
.um.um-password .um-form {
    font-family: Poppins, Arial, Helvetica, sans-serif;
}

.um.um-password .um-field-block {
    color: #666;
}

.um.um-password .um-form input[type="text"] {
    min-height: 44px;
    border: 1px solid #dfe3e6;
    border-radius: 0 !important;
    background: #fff;
    color: #222;
    box-shadow: none;
}

.um.um-password .um-form input[type="text"]:focus {
    border-color: #9aa0a6;
    background: #fff;
    box-shadow: none;
}

.um.um-password .um-col-alt {
    margin-top: 20px;
}

.um.um-password input#um-submit-btn.um-button {
    min-height: 48px;
    margin: 0;
    padding: 13px 18px;
    border: 0;
    border-radius: 0 !important;
    background: #ff1010;
    box-shadow: none;
    font-family: Amboy, Poppins, Arial, Helvetica, sans-serif;
    font-size: 1.15rem;
    line-height: 1.15;
    text-align: center;
    color: #000;
    transition: background-color .15s ease, color .15s ease;
}

.um.um-password input#um-submit-btn.um-button:hover,
.um.um-password input#um-submit-btn.um-button:focus {
    background: #b30000;
    color: #000;
}

/* Keep password reset controls square over Ultimate Member defaults. */
.um-password .um-form input,
.um-password .um-form button,
.um-password .um-form .um-button,
.um-password .um-form .um-alt,
.um-password .um-form a.um-button {
    border-radius: 0 !important;
}

/* Parent Dashboard: actionable past-due payment warning. */
.um-account .futsoc-dashboard-past-due-alert {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	margin-top:10px;
	padding:16px 18px;
	border:1px solid #fecaca;
	border-left:5px solid #dc2626;
	background:#fef2f2;
	color:#7f1d1d;
}

.um-account .futsoc-dashboard-past-due-copy {
	display:flex;
	flex-direction:column;
	gap:4px;
	min-width:0;
}

.um-account .futsoc-dashboard-past-due-copy > strong {
	font-size:16px;
	line-height:1.25;
}

.um-account .futsoc-dashboard-past-due-copy > span {
	font-size:14px;
	line-height:1.45;
}

.um-account .futsoc-dashboard-past-due-actions {
	display:flex;
	align-items:center;
	gap:8px;
	flex:0 0 auto;
}

@media (max-width:700px) {
	.um-account .futsoc-dashboard-past-due-alert {
		align-items:stretch;
		flex-direction:column;
		gap:12px;
	}

	.um-account .futsoc-dashboard-past-due-actions {
		align-items:flex-start;
		flex-direction:column;
	}

}


/* =========================================================
   FUTSOC Ultimate Member registration page.
   Match the square red FUTSOC action-button styling.
   ========================================================= */
.um-register .um-form input#um-submit-btn.um-button,
.um-register input[type="submit"]#um-submit-btn {
    min-height: 48px;
    margin: 0;
    padding: 13px 24px;
    border: 0;
    border-radius: 0;
    background: #ff1010;
    box-shadow: none;
    font-family: Amboy, Poppins, Arial, Helvetica, sans-serif;
    font-size: 1.15rem;
    line-height: 1.15;
    text-align: center;
    color: #000;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease;
}

.um-register .um-form input#um-submit-btn.um-button:hover,
.um-register .um-form input#um-submit-btn.um-button:focus,
.um-register input[type="submit"]#um-submit-btn:hover,
.um-register input[type="submit"]#um-submit-btn:focus {
    background: #b30000;
    color: #000;
}

.um-register .um-field-type_block a[href*="/policies/"] {
    color: #ff1010;
    text-decoration: none;
}

.um-register .um-field-type_block a[href*="/policies/"]:hover,
.um-register .um-field-type_block a[href*="/policies/"]:focus {
    color: #b30000;
    text-decoration: underline;
}


/* Parent Calendar subscription control */
.futsoc-family-calendar-subscribe{
	position:relative;
	margin-left:auto;
}
.um-account .futsoc-family-calendar-subscribe-button{
	display:inline-flex !important;
	align-items:center !important;
	justify-content:center !important;
	width:auto !important;
	min-width:0 !important;
	min-height:34px !important;
	margin:0 !important;
	padding:7px 12px !important;
	background:#f3f3f3 !important;
	border:1px solid #d7d7d7 !important;
	color:#111 !important;
	font-size:12px !important;
	font-weight:700 !important;
	line-height:1 !important;
	white-space:nowrap;
	box-shadow:none !important;
	cursor:pointer !important;
	transition:all .15s ease;
}
.um-account .futsoc-family-calendar-subscribe-button:hover{
	background:#ddd !important;
	color:#111 !important;
}
.futsoc-family-calendar-subscribe-menu{
	position:absolute;
	top:calc(100% + 6px);
	right:0;
	z-index:50;
	width:220px;
	border:1px solid #d7d7d7;
	background:#fff;
	box-shadow:0 8px 24px rgba(0,0,0,.10);
}
.futsoc-family-calendar-subscribe-menu[hidden]{display:none !important;}
.futsoc-family-calendar-subscribe-menu a,
.futsoc-family-calendar-subscribe-menu button{
	display:block;
	width:100%;
	margin:0 !important;
	padding:11px 13px !important;
	border:0 !important;
	border-bottom:1px solid #ededed !important;
	background:#fff !important;
	color:#222 !important;
	font:inherit !important;
	font-size:13px !important;
	font-weight:600 !important;
	line-height:1.3 !important;
	text-align:left !important;
	text-decoration:none !important;
	cursor:pointer;
}
.futsoc-family-calendar-subscribe-menu a:last-child,
.futsoc-family-calendar-subscribe-menu button:last-child{border-bottom:0 !important;}
.futsoc-family-calendar-subscribe-menu a:hover,
.futsoc-family-calendar-subscribe-menu button:hover{background:#f6f6f6 !important;color:#111 !important;}
@media (max-width:600px){
	.futsoc-family-calendar-subscribe{
		width:100%;
		margin-left:0;
		display:flex;
		justify-content:flex-end;
	}
	.um-account .futsoc-family-calendar-subscribe-button{width:auto !important;}
	.futsoc-family-calendar-subscribe-menu{
		left:auto;
		right:0;
		width:220px;
	}
}
