@charset "UTF-8";

.textAreaSingleSpace p {
  /* remove the default paragraph spacing */
  margin: 0;
  /* if you still want a tiny gap between paras, you can use:
     margin-bottom: 0.5em;
     instead of margin:0;
  */
}

.ui-datepicker-month, .ui-datepicker-year{
	height: 40px;
	
}

.layout-topbar-light .layout-topbar {
	background-color: #009ce2 !important;
	box-shadow: 0 24px 64px -2px rgba(0, 0, 0, 0.02), 0 6px 16px -2px
		rgba(0, 0, 0, 0.06), 0 2px 6px -2px rgba(0, 0, 0, 0.08);
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button:hover {
    background-color: #009ce2;
    -moz-transition: background-color 0.2s;
    -o-transition: background-color 0.2s;
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-left .layout-topbar-logo>img
	{
	height: 40px;
}

body .ui-state-disabled {
	opacity: 0.9;
}

.ui-toolbar-group-left, .ui-toolbar-group-right {
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
}

ul.star-bullets {
	list-style-type: none; /* Remove default bullets */
	padding: 0;
}

ul.star-bullets li {
	position: relative;
	padding-left: 1.5em;
}

ul.star-bullets li::before {
	content: '★'; /* Star Unicode character */
	position: absolute;
	left: 0;
	color: #1A74C5; /* Azure blue color */
}

ul.cowboy-bullets {
	list-style-type: none; /* Remove default bullets */
	padding: 0;
}

ul.cowboy-bullets li {
	position: relative;
	padding-left: 1.5em;
}

ul.cowboy-bullets li::before {
	content: '';
	position: absolute;
	left: 0;
	width: 16px; /* Adjust size as needed */
	height: 16px; /* Adjust size as needed */
	background-image:
		url('https://danielbase.s3.amazonaws.com/images/cowboy-hat.svg');
	/* Path to your cowboy hat SVG file */
	background-size: contain;
	background-repeat: no-repeat;
}

ul.cactus-bullets {
	list-style-type: none; /* Remove default bullets */
	padding: 0;
}

ul.cactus-bullets li {
	position: relative;
	padding-left: 1.5em;
}

ul.cactus-bullets li::before {
	content: '';
	position: absolute;
	left: 0;
	width: 16px; /* Adjust size as needed */
	height: 16px; /* Adjust size as needed */
	background-image:
		url('https://danielbase.s3.amazonaws.com/images/cactus.svg');
	/* Path to your cactus SVG file */
	background-size: contain;
	background-repeat: no-repeat;
}

/* body .ui-button {
	background: #2099F0;
	border: 1px solid #2099F0
}

body.main-body {
	background: #EEF8FF;
	}

body .ui-panel .ui-panel-content {
	border: 1px solid #34F6F2;
	background: #FFFFFF;
	color: #515C66;
	padding: 1rem;
}

body .ui-panel .ui-panel-titlebar {
	border: 1px solid #0D2149;
	background: #0D2149;
	color: #FFFFFF;
}

.layout-topbar-actions > li > a > .topbar-icon {
    color: #34F6F2;
}
 */
/* fixes checkbox in header being centered 
body .ui-datatable .ui-selection-column .ui-chkbox-all{
	
	display: inline;
}
*/
.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button
	{
	border-radius: 0;
}

.ui-galleria-item-wrapper {
	background-color: #000000;
}

@media
(
max-width
:
992px)
{
/* This is for the mobile menu to be top and left*/
.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button
	{
	position: absolute;
	top: 0px;
	left: 0px;
	margin: 0;
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button
	{
	width: 50px;
	height: 69px;
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button
	{
	color: #FFFFFF;
	background-color: #009CE2;
}
/* END This is for the mobile menu to be top and left*/


.layout-topbar-light .layout-topbar {
	height: 70px;
}
/* 	.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .menu-button
		{
		top: 15px;
	} */
.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-left
	{
	height: 56px;
	margin-left: 0;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.layout-wrapper .layout-main {
	padding-top: 70px;
}

.layout-wrapper .menu-wrapper {
	top: 70px;
}

}
@media ( min-width : 993px) {
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .layout-topbar-actions
	{
	width: 100%;
	-ms-flex-pack: start;
	justify-content: flex-end;
	padding: 0 16px;
}

@media ( min-width : 992px) {
	.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-left
		{
		border-bottom: 0px;
	}
}

/* Show Picks page styles moved from db-show-pick.xhtml */
            .sp-page.sp-pick-page {
                --sp-win-bg: #ecfdf3;
                --sp-win-border: #36a768;
                --sp-loss-bg: #fef2f2;
                --sp-loss-border: #d83a3a;
                --sp-accent: #009ce2;
                --sp-accent-soft: #e8f5ff;
                --sp-soft: #f7fafc;
                --sp-neutral-border: #dbe7f3;
                --sp-neutral-text: #5c7189;
            }

            .sp-pick-growl .ui-growl-item-container {
                padding-right: 2.8rem;
                overflow: hidden;
            }

            .sp-pick-growl .ui-growl-item-container.ui-growl-error,
            .sp-pick-growl .ui-growl-item-container.ui-state-error {
                background: #fff1f2;
                border: 1px solid #dc2626;
                color: #7f1d1d;
            }

            .sp-pick-growl .ui-growl-item-container.ui-growl-error .ui-growl-item,
            .sp-pick-growl .ui-growl-item-container.ui-state-error .ui-growl-item,
            .sp-pick-growl .ui-growl-item-container.ui-growl-error .ui-growl-message,
            .sp-pick-growl .ui-growl-item-container.ui-state-error .ui-growl-message {
                color: #7f1d1d;
                line-height: 1.45;
            }

            .sp-pick-growl .ui-growl-icon-close,
            .sp-pick-growl .ui-icon-closethick {
                opacity: 1 !important;
                right: 0.55rem;
                top: 0.55rem;
                width: 1.4rem;
                height: 1.4rem;
                border-radius: 999px;
                background: rgba(15, 23, 42, 0.08);
            }

            .sp-pick-growl .sp-growl-actions,
            .sp-growl-actions {
                display: block !important;
                width: calc(100% + 2rem);
                margin: 0.75rem -1rem -1rem -1rem;
                padding-top: 0;
            }

            .sp-pick-growl .sp-growl-dismiss-bar,
            .sp-growl-dismiss-bar {
                max-width: none !important;
                width: 100%;
                display: flex;
                justify-content: center;
                align-items: center;
                gap: 0.6rem;
                border: 0;
                border-top: 1px solid #9ab4c8;
                border-radius: 0 0 0.95rem 0.95rem;
                background: #f8fbfe;
                color: #1f4664;
                font-size: 0.83rem;
                font-weight: 700;
                line-height: 1;
                padding: 0.72rem 0.85rem;
                cursor: pointer;
            }

            .sp-pick-growl .ui-growl-message p {
                display: block;
                width: 100%;
                margin: 0.35rem 0 0;
            }

            .sp-pick-growl .sp-growl-dismiss-bar:hover,
            .sp-pick-growl .sp-growl-dismiss-bar:focus-visible,
            .sp-growl-dismiss-bar:hover,
            .sp-growl-dismiss-bar:focus-visible {
                border-color: #1f6e9f;
                color: #0f4d73;
                background: #eef6fc;
            }

            .sp-pick-growl .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error,
            .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error {
                border-top-color: #e11d48;
                background: #ffe4e6;
                color: #9f1239;
            }

            .sp-pick-growl .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error:hover,
            .sp-pick-growl .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error:focus-visible,
            .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error:hover,
            .sp-growl-dismiss-bar.sp-growl-dismiss-bar-error:focus-visible {
                border-top-color: #be123c;
                background: #fecdd3;
                color: #881337;
            }

            .sp-pick-growl .sp-growl-dismiss-label,
            .sp-growl-dismiss-label {
                letter-spacing: 0.01em;
                margin-right: 0.45rem;
            }

            .sp-pick-growl .sp-growl-countdown,
            .sp-growl-countdown {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-width: 2.2rem;
                color: #355a76;
                font-size: 0.78rem;
                font-weight: 700;
                line-height: 1;
            }

            .sp-page.sp-pick-page .sp-header-image-wrap {
                padding: 0 10%;
                margin: 0 0 1rem 0;
            }

            .sp-page.sp-pick-page .sp-header-image {
                display: block;
                width: 100%;
                max-width: 400px;
                height: auto;
                margin: 0 auto;
            }

            .sp-page.sp-pick-page .sp-panel {
                border-radius: 1.1rem;
                overflow: hidden;
            }

            .sp-page.sp-pick-page .sp-panel .ui-panel-content {
                padding: 1rem;
            }

            .sp-page.sp-pick-page .sp-show-row {
                border: 1px solid #c8ddf0;
                border-radius: 1.05rem;
                padding: 0.95rem 1rem;
                background: linear-gradient(132deg, #e9f6ff 0%, #ffffff 52%, #f4fbff 100%);
                position: relative;
                overflow: hidden;
            }

            .sp-page.sp-pick-page .sp-show-row::after {
                content: "";
                position: absolute;
                right: -42px;
                top: -42px;
                width: 140px;
                height: 140px;
                border-radius: 999px;
                background: radial-gradient(circle at center, rgba(0, 156, 226, 0.2) 0%, rgba(0, 156, 226, 0) 70%);
                pointer-events: none;
            }

            .sp-page.sp-pick-page .sp-show-row-topline {
                display: flex;
                align-items: center;
                gap: 0.45rem;
                margin-bottom: 0.45rem;
                position: relative;
                z-index: 1;
            }

            .sp-page.sp-pick-page .sp-show-row-icon {
                width: 1.6rem;
                height: 1.6rem;
                border-radius: 999px;
                border: 1px solid #9ecdf1;
                background: #f2f9ff;
                color: #0d67a5;
                font-size: 0.82rem;
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            .sp-page.sp-pick-page .sp-show-row-title {
                font-size: 0.72rem;
                text-transform: uppercase;
                letter-spacing: 0.05em;
                font-weight: 700;
                color: #2b6cb0;
            }

            .sp-page.sp-pick-page .sp-show-row-value {
                position: relative;
                z-index: 1;
                font-size: clamp(1.05rem, 2.1vw, 1.45rem);
                line-height: 1.3;
                font-weight: 800;
                color: #123a56;
            }

            .sp-page.sp-pick-page .sp-score-hero {
                border: 1px solid #cfe9db;
                border-radius: 1.1rem;
                background: linear-gradient(140deg, #ecfdf3 0%, #ffffff 58%, #f2fff8 100%);
                padding: 1.1rem 1rem;
            }

            .sp-page.sp-pick-page .sp-score-topline {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.6rem;
            }

            .sp-page.sp-pick-page .sp-score-total {
                font-size: clamp(2.5rem, 13vw, 4rem);
                line-height: 1;
                color: #1f7a49;
                font-weight: 800;
                text-shadow: 0 3px 10px rgba(31, 122, 73, 0.08);
                margin-top: 0.45rem;
            }

            .sp-page.sp-pick-page .sp-score-status {
                border-radius: 999px;
                font-size: 0.7rem;
                letter-spacing: 0.04em;
                padding: 0.2rem 0.55rem;
                border: 1px solid #9ad8b6;
                color: #1f7a49;
                background: #f2fff8;
                text-transform: uppercase;
                font-weight: 700;
            }

            .sp-page.sp-pick-page .sp-score-status.pending {
                border-color: #f3d9a8;
                color: #9a6a11;
                background: #fff8ea;
            }

            .sp-page.sp-pick-page .sp-exotic {
                border: 1px solid #9cd9ff;
                border-radius: 1rem;
                background: linear-gradient(130deg, #e8f5ff 0%, #ffffff 75%);
                padding: 0.95rem;
                position: relative;
                overflow: hidden;
            }

            .sp-page.sp-pick-page .sp-exotic::after {
                content: "";
                position: absolute;
                right: -36px;
                top: -36px;
                width: 110px;
                height: 110px;
                border-radius: 999px;
                background: radial-gradient(circle at center, rgba(0, 156, 226, 0.22) 0%, rgba(0, 156, 226, 0) 70%);
                pointer-events: none;
            }

            .sp-page.sp-pick-page .sp-exotic-grid {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0.5rem;
                margin-top: 0.75rem;
            }

            .sp-page.sp-pick-page .sp-exotic-stat {
                border: 1px solid #d8e8f6;
                border-radius: 0.75rem;
                background: rgba(255, 255, 255, 0.85);
                padding: 0.45rem 0.55rem;
            }

            .sp-page.sp-pick-page .sp-exotic-stat .text-xs {
                color: var(--sp-neutral-text);
            }

            .sp-page.sp-pick-page .sp-pill {
                display: inline-flex;
                align-items: center;
                border-radius: 999px;
                padding: 0.2rem 0.65rem;
                font-size: 0.8rem;
                font-weight: 600;
                border: 1px solid #d6e2ef;
                background: #f7fbff;
                color: #37526d;
            }

            .sp-page.sp-pick-page .sp-pill.match {
                border-color: #9ad8b6;
                background: #effdf4;
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-pill.miss {
                border-color: #efb0b0;
                background: #fff3f3;
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-pill.na {
                border-color: #cbd8e6;
                background: #f5f8fc;
                color: #5c7189;
            }

            .sp-page.sp-pick-page .sp-pill.win {
                border-color: #9ad8b6;
                background: var(--sp-win-bg);
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-pill.loss {
                border-color: #efb0b0;
                background: var(--sp-loss-bg);
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-pill.rarity-favorite {
                border-color: #8dc1ff;
                background: #ecf5ff;
                color: #1f5e99;
            }

            .sp-page.sp-pick-page .sp-pill.rarity-long-shot {
                border-color: #8fdfbe;
                background: #edfbf4;
                color: #177246;
            }

            .sp-page.sp-pick-page .sp-pill.rarity-dark-horse {
                border-color: #f3b7b7;
                background: #fff0f0;
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-indicator-group {
                margin-top: 0.55rem;
                border: 1px solid #d8e8f6;
                border-radius: 0.75rem;
                background: #f9fcff;
                padding: 0.5rem 0.55rem;
            }

            .sp-page.sp-pick-page .sp-indicator-title {
                font-size: 0.74rem;
                text-transform: uppercase;
                letter-spacing: 0.04em;
                color: #5c7189;
                font-weight: 700;
                margin-bottom: 0.35rem;
            }

            .sp-page.sp-pick-page .sp-section-subtitle {
                font-size: 1.02rem;
                font-weight: 700;
                color: #2d6d98;
                letter-spacing: 0.01em;
            }

            .sp-page.sp-pick-page .sp-section-subtitle.score {
                color: #2f7f55;
            }

            .sp-page.sp-pick-page .sp-section-subtitle.lg {
                font-size: 1.2rem;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-score-list {
                display: grid;
                gap: 0.75rem;
            }

            .sp-page.sp-pick-page .sp-score-card {
                border: 1px solid #d9e5f2;
                border-radius: 0.95rem;
                background: #ffffff;
                padding: 0.85rem;
            }

            .sp-page.sp-pick-page .sp-score-card.win {
                border-color: var(--sp-win-border);
                background: linear-gradient(180deg, var(--sp-win-bg) 0%, #ffffff 85%);
            }

            .sp-page.sp-pick-page .sp-score-card.loss {
                border-color: var(--sp-loss-border);
                background: linear-gradient(180deg, var(--sp-loss-bg) 0%, #ffffff 85%);
            }

            .sp-page.sp-pick-page .sp-score-card.neutral {
                border-color: #cfdceb;
                background: linear-gradient(180deg, #f7fafd 0%, #ffffff 85%);
            }

            .sp-page.sp-pick-page .sp-score-card .sp-pill {
                font-size: calc(0.8rem + 1pt);
            }

            .sp-page.sp-pick-page .sp-score-card .sp-indicator-title {
                font-size: calc(0.74rem + 1pt);
            }

            .sp-page.sp-pick-page .sp-score-card .sp-stat-label {
                font-size: calc(0.72rem + 1pt);
            }

            .sp-page.sp-pick-page .sp-score-card .sp-stat-value {
                font-size: calc(1rem + 1pt);
            }

            .sp-page.sp-pick-page .sp-row-head {
                display: flex;
                align-items: flex-start;
                justify-content: space-between;
                gap: 0.75rem;
            }

            .sp-page.sp-pick-page .sp-song {
                font-size: 1.05rem;
                font-weight: 700;
                margin-top: 0.25rem;
                line-height: 1.25;
            }

            .sp-page.sp-pick-page .sp-subtotal {
                text-align: right;
                min-width: 95px;
            }

            .sp-page.sp-pick-page .sp-subtotal-label {
                font-size: 0.72rem;
                color: var(--sp-neutral-text);
                text-transform: uppercase;
                letter-spacing: 0.04em;
            }

            .sp-page.sp-pick-page .sp-subtotal-value {
                font-size: 1.45rem;
                font-weight: 800;
                line-height: 1.2;
            }

            .sp-page.sp-pick-page .sp-subtotal-value.win {
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-subtotal-value.loss {
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-subtotal-value.neutral {
                color: #5c7189;
            }

            .sp-page.sp-pick-page .sp-breakdown {
                margin-top: 0.6rem;
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0.45rem;
            }

            .sp-page.sp-pick-page .sp-stat {
                border-radius: 0.7rem;
                background: var(--sp-soft);
                border: 1px solid #e4edf6;
                padding: 0.45rem 0.55rem;
            }

            .sp-page.sp-pick-page .sp-stat-label {
                font-size: 0.72rem;
                text-transform: uppercase;
                letter-spacing: 0.03em;
                color: var(--sp-neutral-text);
            }

            .sp-page.sp-pick-page .sp-stat-value {
                font-weight: 600;
                margin-top: 0.12rem;
            }

            .sp-page.sp-pick-page .sp-stat-value.win {
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-stat-value.loss {
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-stat-value.neutral {
                color: #5c7189;
            }

            .sp-page.sp-pick-page .sp-notes {
                margin-top: 0.6rem;
                border-radius: 0.65rem;
                border-left: 4px solid var(--sp-accent);
                background: #f2f9ff;
                padding: 0.5rem 0.65rem;
                font-size: 0.92rem;
            }

            .sp-page.sp-pick-page .sp-empty-note {
                color: var(--sp-neutral-text);
                font-size: 0.92rem;
            }

            .sp-page.sp-pick-page .sp-edit-picks {
                display: grid;
                gap: 0.8rem;
            }

            .sp-page.sp-pick-page .sp-edit-card {
                border: 1px solid #d8e4f0;
                border-radius: 0.95rem;
                background: #ffffff;
                padding: 0.8rem;
            }

            .sp-page.sp-pick-page .sp-edit-label {
                display: block;
                margin-bottom: 0.45rem;
                color: #2d6d98;
                font-size: 0.95rem;
                font-weight: 800;
                line-height: 1.25;
            }

            .sp-page.sp-pick-page .sp-edit-card .ui-autocomplete {
                width: min(32rem, 92%);
            }

            .sp-page.sp-pick-page .sp-edit-card .ui-autocomplete .ui-autocomplete-input {
                width: 100%;
            }

            .sp-page.sp-pick-page .sp-show-option-row {
                display: flex;
                align-items: center;
                gap: 0.55rem;
                width: 100%;
                min-width: 0;
            }

            .sp-page.sp-pick-page .sp-show-status-icon {
                width: 1.15rem;
                text-align: center;
                flex: 0 0 1.15rem;
                font-size: 0.95rem;
            }

            .sp-page.sp-pick-page .sp-show-status-icon.is-locked {
                color: #b42318;
            }

            .sp-page.sp-pick-page .sp-show-status-icon.is-picked {
                color: #4753d6;
            }

            .sp-page.sp-pick-page .sp-show-status-icon.is-available {
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-show-option-text {
                display: flex;
                align-items: baseline;
                gap: 0.45rem;
                min-width: 0;
                flex-wrap: wrap;
            }

            .sp-page.sp-pick-page .sp-show-option-label {
                min-width: 0;
            }

            .sp-page.sp-pick-page .sp-modifier-bar {
                margin-top: 0.65rem;
                border-top: 1px dashed #cfddeb;
                padding-top: 0.5rem;
                display: flex;
                align-items: center;
                flex-wrap: wrap;
                gap: 0.75rem;
            }

            .sp-page.sp-pick-page .sp-submit-row {
                position: sticky;
                bottom: 0.6rem;
                z-index: 3;
                padding-top: 0.4rem;
            }

            .sp-page.sp-pick-page .sp-submit-btn {
                width: 100%;
            }

            .sp-page.sp-pick-page .sp-rules-row {
                margin-top: -0.4rem;
                margin-bottom: 1rem;
                display: flex;
                justify-content: flex-end;
            }

            .sp-page.sp-pick-page .sp-actions-row {
                justify-content: space-between;
                align-items: center;
                gap: 0.75rem;
                flex-wrap: nowrap;
            }

            .sp-page.sp-pick-page .sp-actions-row > * {
                min-width: 0;
            }

            .sp-page.sp-pick-page .sp-actions-row .sp-rules-pill {
                white-space: nowrap;
            }

            .sp-page.sp-pick-page .sp-view-toggle-row {
                display: inline-flex;
                align-items: center;
                gap: 0.35rem;
                margin: -0.2rem 0 0.9rem auto;
                padding: 0.2rem;
                border-radius: 999px;
                border: 1px solid #c8ddf0;
                background: #f2f9ff;
            }

            .sp-page.sp-pick-page .sp-view-toggle {
                appearance: none;
                border: 0;
                border-radius: 999px;
                padding: 0.42rem 0.85rem;
                background: transparent;
                color: #1f5e99;
                font-size: 0.82rem;
                font-weight: 700;
                line-height: 1.1;
                cursor: pointer;
                white-space: nowrap;
                transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
            }

            .sp-page.sp-pick-page .sp-view-toggle.is-active {
                background: linear-gradient(140deg, #0a6ca8 0%, #0f82c6 100%);
                color: #ffffff;
                box-shadow: 0 4px 10px rgba(15, 130, 198, 0.28);
            }

            .sp-page.sp-pick-page .sp-view-toggle:focus-visible {
                outline: 2px solid #5eb4ea;
                outline-offset: 1px;
            }

            .sp-page.sp-pick-page .sp-view-pane.sp-view-pane-contracted {
                display: none;
            }

            .sp-page.sp-pick-page.sp-view-contracted-mode .sp-view-pane.sp-view-pane-expanded {
                display: none;
            }

            .sp-page.sp-pick-page.sp-view-contracted-mode .sp-view-pane.sp-view-pane-contracted {
                display: block;
            }

            .sp-page.sp-pick-page.sp-view-contracted-mode .sp-panel .ui-panel-titlebar {
                display: none;
            }

            .sp-page.sp-pick-page .sp-contract-card {
                border: 1px solid #c7dff2;
                border-radius: 1.15rem;
                background: linear-gradient(145deg, #f0f9ff 0%, #ffffff 34%, #f7fff9 100%);
                padding: 0.8rem;
                display: grid;
                gap: 0.55rem;
                box-shadow: 0 10px 26px rgba(15, 77, 122, 0.08);
            }

            .sp-page.sp-pick-page .sp-contract-topline {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.55rem;
            }

            .sp-page.sp-pick-page .sp-contract-kicker {
                font-size: 0.66rem;
                text-transform: uppercase;
                letter-spacing: 0.07em;
                color: #2f6f9f;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-contract-user {
                font-size: 0.82rem;
                font-weight: 700;
                line-height: 1.2;
                color: #184d73;
                margin-top: 0.08rem;
            }

            .sp-page.sp-pick-page .sp-contract-show {
                font-size: 0.9rem;
                font-weight: 700;
                line-height: 1.2;
                color: #123a56;
            }

            .sp-page.sp-pick-page .sp-contract-score-grid {
                display: grid;
                grid-template-columns: 1.05fr 1fr;
                gap: 0.5rem;
            }

            .sp-page.sp-pick-page .sp-contract-score-card,
            .sp-page.sp-pick-page .sp-contract-exotic-card {
                border: 1px solid #d7e8f5;
                border-radius: 0.85rem;
                background: rgba(255, 255, 255, 0.92);
                padding: 0.48rem 0.6rem;
            }

            .sp-page.sp-pick-page .sp-contract-label {
                font-size: 0.62rem;
                text-transform: uppercase;
                letter-spacing: 0.06em;
                color: #5c7189;
                font-weight: 700;
            }

            .sp-page.sp-pick-page .sp-contract-total {
                margin-top: 0.1rem;
                font-size: 1.9rem;
                line-height: 1;
                color: #1f7a49;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-contract-exotic-name {
                margin-top: 0.12rem;
                font-size: 0.84rem;
                color: #0d4f7d;
                font-weight: 700;
                line-height: 1.15;
            }

            .sp-page.sp-pick-page .sp-contract-exotic-points {
                margin-top: 0.08rem;
                font-size: 1.05rem;
                line-height: 1.1;
                color: #1f7a49;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-contract-subnote {
                border-radius: 0.65rem;
                border: 1px solid #f0d8a5;
                background: #fff9ee;
                color: #8f6414;
                font-size: 0.78rem;
                padding: 0.42rem 0.5rem;
                line-height: 1.2;
            }

            .sp-page.sp-pick-page .sp-contract-muted {
                margin-top: 0.2rem;
                color: #5c7189;
                font-size: 0.83rem;
                font-weight: 600;
            }

            .sp-page.sp-pick-page .sp-contract-picks {
                display: grid;
                gap: 0.36rem;
            }

            .sp-page.sp-pick-page .sp-contract-pick {
                border-radius: 0.8rem;
                border: 1px solid #d7e6f2;
                background: #ffffff;
                padding: 0.35rem 0.52rem;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.48rem;
            }

            .sp-page.sp-pick-page .sp-contract-pick.win {
                border-color: #9ad8b6;
                background: #f2fdf6;
            }

            .sp-page.sp-pick-page .sp-contract-pick.loss {
                border-color: #efb0b0;
                background: #fff6f6;
            }

            .sp-page.sp-pick-page .sp-contract-pick.neutral {
                border-color: #d7e6f2;
                background: #f9fcff;
            }

            .sp-page.sp-pick-page .sp-contract-pick-main {
                display: flex;
                align-items: center;
                min-width: 0;
                gap: 0.45rem;
                flex: 1 1 auto;
            }

            .sp-page.sp-pick-page .sp-contract-pick-main-wrap {
                min-width: 0;
                flex: 1 1 auto;
                display: grid;
                gap: 0.22rem;
            }

            .sp-page.sp-pick-page .sp-contract-pick-num {
                width: 1.2rem;
                height: 1.2rem;
                border-radius: 999px;
                border: 1px solid #9bc8e7;
                background: #e7f4ff;
                color: #155f93;
                font-size: 0.72rem;
                font-weight: 800;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                flex: 0 0 1.2rem;
            }

            .sp-page.sp-pick-page .sp-contract-pick-song {
                font-size: 0.86rem;
                line-height: 1.15;
                font-weight: 700;
                color: #173f5b;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                min-width: 0;
            }

            .sp-page.sp-pick-page .sp-contract-pick-meta {
                display: flex;
                align-items: center;
                gap: 0.24rem;
                flex-wrap: wrap;
                padding-left: 1.66rem;
                min-height: 0.78rem;
            }

            .sp-page.sp-pick-page .sp-contract-meta-pill {
                border-radius: 999px;
                border: 1px solid #d4e3ef;
                background: #f8fbff;
                color: #42607a;
                padding: 0.08rem 0.38rem;
                font-size: 0.62rem;
                font-weight: 700;
                line-height: 1.1;
                letter-spacing: 0.02em;
            }

            .sp-page.sp-pick-page .sp-contract-meta-pill.selected {
                border-color: #9ad8b6;
                background: #effdf4;
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-contract-pick-side {
                display: inline-flex;
                align-items: center;
                gap: 0.35rem;
                flex: 0 0 auto;
            }

            .sp-page.sp-pick-page .sp-contract-mini-pill {
                border-radius: 999px;
                border: 1px solid #d6e2ef;
                background: #f7fbff;
                color: #37526d;
                padding: 0.12rem 0.45rem;
                font-size: 0.66rem;
                font-weight: 700;
                text-transform: uppercase;
                letter-spacing: 0.04em;
                line-height: 1.15;
            }

            .sp-page.sp-pick-page .sp-contract-mini-pill.match {
                border-color: #9ad8b6;
                background: #effdf4;
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-contract-mini-pill.miss {
                border-color: #efb0b0;
                background: #fff3f3;
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-contract-mini-pill.na {
                border-color: #cbd8e6;
                background: #f5f8fc;
                color: #5c7189;
            }

            .sp-page.sp-pick-page .sp-contract-pick-score {
                min-width: 2.8rem;
                text-align: right;
                font-size: 0.95rem;
                line-height: 1;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-contract-pick-score.win {
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-contract-pick-score.loss {
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-contract-pick-score.neutral {
                color: #5c7189;
            }

            .sp-page.sp-pick-page .sp-rules-pill {
                display: inline-flex;
                align-items: center;
                border-radius: 999px;
                padding: 0.4rem 0.9rem;
                border: 1px solid #9ecdf1;
                background: linear-gradient(140deg, #edf8ff 0%, #f8fcff 100%);
                color: #0d67a5;
                font-weight: 700;
                text-decoration: none;
                transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
            }

            .sp-page.sp-pick-page .sp-rules-pill:hover {
                background: #e1f2ff;
                border-color: #77b8e5;
                color: #084b77;
            }

            .sp-page.sp-pick-page .sp-rules-pill:focus-visible {
                outline: 2px solid #7dbff0;
                outline-offset: 2px;
            }

            .sp-page.sp-pick-page .sp-rules-content {
                display: grid;
                gap: 0.85rem;
                max-height: 65vh;
                overflow: auto;
                padding-right: 0.25rem;
            }

            .sp-page.sp-pick-page .sp-rules-block {
                border: 1px solid #dbe7f3;
                border-radius: 0.8rem;
                background: #fbfdff;
                padding: 0.75rem 0.8rem;
            }

            .sp-page.sp-pick-page .sp-rules-title {
                font-size: 1rem;
                font-weight: 700;
                color: #153e75;
                margin-bottom: 0.4rem;
            }

            .sp-page.sp-pick-page .sp-rules-list {
                margin: 0;
                padding-left: 1rem;
                display: grid;
                gap: 0.3rem;
            }

            .sp-page.sp-pick-page .sp-rules-notes {
                margin-top: 0.65rem;
            }

            .sp-page.sp-pick-page .sp-rules-score-grid {
                display: grid;
                gap: 0.45rem;
            }

            .sp-page.sp-pick-page .sp-rules-gap-tier-grid {
                margin-top: 0.65rem;
                margin-bottom: 0.65rem;
            }

            .sp-page.sp-pick-page .sp-rules-score-row {
                border: 1px solid #d9e5f2;
                border-radius: 0.75rem;
                background: #ffffff;
                padding: 0.55rem 0.65rem;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.6rem;
            }

            .sp-page.sp-pick-page .sp-rules-score-label {
                font-size: 0.92rem;
                color: #334e68;
                line-height: 1.3;
            }

            .sp-page.sp-pick-page .sp-rules-score-points {
                min-width: 3.1rem;
                text-align: right;
                font-size: 1.1rem;
                font-weight: 800;
            }

            .sp-page.sp-pick-page .sp-rules-score-points.win {
                color: #1f7a49;
            }

            .sp-page.sp-pick-page .sp-rules-score-points.loss {
                color: #b72222;
            }

            .sp-page.sp-pick-page .sp-rules-score-points.neutral {
                color: #2b6cb0;
            }

            .sp-page.sp-pick-page .sp-rules-dialog.ui-dialog {
                width: min(760px, 94vw) !important;
            }

            .sp-page.sp-pick-page .sp-rules-dialog .ui-dialog-content {
                max-height: 72vh;
                overflow: auto;
            }

            @media (min-width: 768px) {
                .sp-page.sp-pick-page .sp-panel .ui-panel-content {
                    padding: 1.15rem;
                }

                .sp-page.sp-pick-page .sp-exotic-grid {
                    gap: 0.7rem;
                }

                .sp-page.sp-pick-page .sp-score-list {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }

                .sp-page.sp-pick-page .sp-edit-picks {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }

                .sp-page.sp-pick-page .sp-submit-btn {
                    width: auto;
                    min-width: 240px;
                }
            }

            @media (max-width: 767px) {
                .sp-page.sp-pick-page .sp-actions-row {
                    gap: 0.4rem;
                }

                .sp-page.sp-pick-page .sp-actions-row .sp-rules-pill {
                    padding: 0.35rem 0.7rem;
                    font-size: 0.85rem;
                }

                .sp-page.sp-pick-page .sp-view-toggle-row {
                    width: 100%;
                    margin-right: 0;
                    justify-content: center;
                }

                .sp-page.sp-pick-page .sp-view-toggle {
                    flex: 1 1 0;
                    text-align: center;
                }

                .sp-page.sp-pick-page.sp-view-contracted-mode .sp-panel .ui-panel-content {
                    padding: 0.7rem;
                }

                .sp-page.sp-pick-page .sp-contract-score-grid {
                    grid-template-columns: 1fr 1fr;
                    gap: 0.4rem;
                }

                .sp-page.sp-pick-page .sp-contract-total {
                    font-size: 1.72rem;
                }

                .sp-page.sp-pick-page .sp-contract-pick {
                    padding: 0.33rem 0.45rem;
                }

                .sp-page.sp-pick-page .sp-contract-pick-song {
                    font-size: 0.8rem;
                }

                .sp-page.sp-pick-page .sp-contract-pick-meta {
                    padding-left: 1.5rem;
                }

                .sp-page.sp-pick-page .sp-contract-meta-pill {
                    font-size: 0.6rem;
                }

                .sp-page.sp-pick-page .sp-contract-pick-score {
                    min-width: 2.55rem;
                    font-size: 0.86rem;
                }

                .sp-page.sp-pick-page .sp-exotic-grid {
                    grid-template-columns: 1fr;
                }

                .sp-page.sp-pick-page .sp-breakdown {
                    grid-template-columns: 1fr;
                }

                .sp-page.sp-pick-page .sp-row-head {
                    flex-direction: column;
                }

                .sp-page.sp-pick-page .sp-subtotal {
                    text-align: left;
                }
            }

            @media (max-width: 430px) {
                .sp-page.sp-pick-page .sp-edit-card .ui-autocomplete {
                    width: 100%;
                }
            }


/* Show Picks list page styles moved from db-show-picks.xhtml */
            .sp-page.sp-picks-page .sp-header-image-wrap {
                padding: 0 10%;
                margin: 0 0 1rem 0;
            }

            .sp-page.sp-picks-page .sp-header-image {
                display: block;
                width: 100%;
                max-width: 400px;
                height: auto;
                margin: 0 auto;
            }

            .sp-page.sp-picks-page .sp-panel {
                border-radius: 1.1rem;
                overflow: hidden;
            }

            .sp-page.sp-picks-page .sp-panel .ui-panel-content {
                padding: 1rem;
            }

            .sp-page.sp-picks-page .sp-user-score-grid {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0.75rem;
                margin-top: 0.9rem;
            }

            .sp-page.sp-picks-page .sp-user-score-heading {
                margin-top: 0.2rem;
                margin-bottom: 0.35rem;
                border-radius: 0.65rem;
                border-left: 4px solid #009ce2;
                background: #f2f9ff;
                padding: 0.5rem 0.65rem;
            }

            .sp-page.sp-picks-page .sp-user-score-heading.sp-show-picker-major-heading {
                margin-top: 1rem;
            }

            .sp-page.sp-picks-page .sp-user-score-heading.sp-your-picks-major-heading {
                margin-top: 1rem;
            }

            .sp-page.sp-picks-page .sp-user-score-heading-user {
                font-size: clamp(1.5rem, 4.6vw, 2.25rem);
                color: #0d67a5;
                font-weight: 800;
                line-height: 1.1;
                word-break: break-word;
            }

            .sp-page.sp-picks-page .sp-section-heading {
                margin-top: 0.3rem;
                margin-bottom: 0.35rem;
                border-radius: 0.6rem;
                border-left: 4px solid #38a3e3;
                background: #f3f9ff;
                padding: 0.4rem 0.6rem;
            }

            .sp-page.sp-picks-page .sp-section-heading-title {
                font-size: clamp(1.2rem, 3.4vw, 1.55rem);
                color: #0d67a5;
                font-weight: 800;
                line-height: 1.15;
                word-break: break-word;
            }

            .sp-page.sp-picks-page .sp-show-picker-section {
                position: relative;
                margin: 0.5rem 0 1.6rem;
                padding: 0.9rem 0.95rem 0.62rem;
                border: 1px solid #8fc2e3;
                border-top: 3px solid #0d67a5;
                border-left: 7px solid #0d67a5;
                border-radius: 1.05rem;
                background: linear-gradient(166deg, #dff1ff 0%, #eef8ff 34%, #ffffff 100%);
                box-shadow: 0 10px 24px rgba(13, 103, 165, 0.14);
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-show-picker-panel {
                margin-bottom: 0 !important;
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-show-picker-panel .ui-panel-content {
                padding-bottom: 1.35rem;
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-panel {
                border: 1px solid #b6d6eb;
                box-shadow: 0 3px 10px rgba(13, 103, 165, 0.08);
            }

            .sp-page.sp-picks-page .sp-section-heading.sp-section-heading-emphasis {
                margin-top: 0;
                margin-bottom: 0.72rem;
                border-left-color: #0d67a5;
                background: linear-gradient(145deg, rgba(255, 255, 255, 0.94) 0%, rgba(240, 249, 255, 0.96) 100%);
                box-shadow: inset 0 0 0 1px #cce4f6;
            }

            .sp-page.sp-picks-page .sp-section-heading-desc {
                display: block;
                margin-top: 0.18rem;
                color: #0d67a5;
                font-size: 0.82rem;
                font-weight: 700;
                line-height: 1.35;
                letter-spacing: 0.01em;
            }

            .sp-page.sp-picks-page .sp-section-heading.sp-subsection-heading {
                margin-top: 0.15rem;
                margin-bottom: 0.25rem;
                border-left: 0;
                border-radius: 0;
                background: transparent;
                padding: 0.12rem 0.1rem;
            }

            .sp-page.sp-picks-page .sp-section-heading.sp-subsection-heading .sp-section-heading-title {
                font-size: clamp(0.95rem, 2.4vw, 1.08rem);
                line-height: 1.2;
                color: #0b5a90;
            }

            .sp-page.sp-picks-page .sp-section-heading.sp-subsection-heading .sp-section-heading-desc {
                margin-top: 0.1rem;
                font-size: 0.74rem;
                font-weight: 600;
                color: #2f6088;
            }

            .sp-page.sp-picks-page .sp-section-step {
                display: inline-flex;
                align-items: center;
                width: fit-content;
                margin-bottom: 0.22rem;
                border-radius: 999px;
                padding: 0.12rem 0.5rem;
                font-size: 0.7rem;
                font-weight: 800;
                letter-spacing: 0.04em;
                text-transform: uppercase;
                color: #0a4f7e;
                background: #d7ecfb;
                border: 1px solid #9ccdf0;
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-search-label {
                color: #0d67a5;
                letter-spacing: 0.01em;
            }

            .sp-page.sp-picks-page .sp-show-picker-section #mainForm\:selectShowBtn.ui-button {
                border-color: #0d67a5;
                background: linear-gradient(145deg, #0d67a5 0%, #1382cb 100%);
                color: #ffffff;
                font-weight: 700;
                box-shadow: 0 4px 10px rgba(13, 103, 165, 0.2);
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-show-picker-primary-btn.ui-button {
                border-color: #0d67a5;
                background: linear-gradient(145deg, #0d67a5 0%, #1382cb 100%);
                color: #ffffff;
                font-weight: 700;
                box-shadow: 0 4px 10px rgba(13, 103, 165, 0.2);
            }

            .sp-page.sp-picks-page .sp-show-picker-section #mainForm\:selectShowBtn.ui-button:hover {
                background: linear-gradient(145deg, #0b5a90 0%, #106fae 100%);
                border-color: #0b5a90;
            }

            .sp-page.sp-picks-page .sp-show-picker-section .sp-show-picker-primary-btn.ui-button:hover {
                background: linear-gradient(145deg, #0b5a90 0%, #106fae 100%);
                border-color: #0b5a90;
            }

            .sp-page.sp-picks-page .sp-show-picker-section + .sp-section-heading {
                margin-top: 1rem;
            }

            .sp-page.sp-picks-page .sp-next-shows-section {
                margin: 0 0 1rem;
            }

            .sp-page.sp-picks-page .sp-next-shows-section .sp-panel {
                border: 1px solid #cde2f1;
                box-shadow: 0 3px 10px rgba(13, 103, 165, 0.08);
            }

            .sp-page.sp-picks-page .sp-next-show-row {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.65rem;
                border: 1px solid #9ecdf1;
                border-radius: 0.35rem;
                background: linear-gradient(140deg, #edf8ff 0%, #f8fcff 100%);
                padding: 0.4rem 0.9rem;
            }

            .sp-page.sp-picks-page .sp-next-show-btn {
                display: block;
                text-decoration: none;
                border-radius: 0.35rem;
            }

            .sp-page.sp-picks-page .sp-next-show-btn:hover {
                text-decoration: none;
            }

            .sp-page.sp-picks-page .sp-next-show-btn:hover .sp-next-show-row {
                background: #e1f2ff;
                border-color: #77b8e5;
                box-shadow: none;
            }

            .sp-page.sp-picks-page .sp-next-show-btn.is-active .sp-next-show-row,
            .sp-page.sp-picks-page .sp-next-show-btn.is-active:hover .sp-next-show-row {
                background: linear-gradient(140deg, #e1f2ff 0%, #f1f9ff 100%);
                border-color: #2f8ecf;
                box-shadow: 0 0 0 1px rgba(47, 142, 207, 0.24);
            }

            .sp-page.sp-picks-page .sp-next-show-btn.is-disabled {
                cursor: default;
            }

            .sp-page.sp-picks-page .sp-next-show-btn.is-disabled .sp-next-show-row,
            .sp-page.sp-picks-page .sp-next-show-btn.is-disabled:hover .sp-next-show-row {
                background: linear-gradient(160deg, #f7fbff 0%, #ffffff 100%);
                border-color: #cfddec;
                box-shadow: none;
            }

            .sp-page.sp-picks-page .sp-next-show-btn + .sp-next-show-btn {
                margin-top: 0.55rem;
            }

            .sp-page.sp-picks-page .sp-next-show-btn:focus-visible {
                outline: 2px solid #7dbff0;
                outline-offset: 2px;
            }

            .sp-page.sp-picks-page .sp-next-show-label {
                color: #163e63;
                font-size: 0.95rem;
                line-height: 1.35;
                font-weight: 700;
                overflow-wrap: anywhere;
            }

            .sp-page.sp-picks-page .sp-next-show-meta {
                display: inline-flex;
                align-items: center;
                gap: 0.35rem;
                flex: 0 0 auto;
            }

            .sp-page.sp-picks-page .sp-next-show-countdown {
                border-radius: 999px;
                padding: 0.2rem 0.6rem;
                border: 1px solid #bcdaf2;
                background: #eaf5ff;
                color: #0d67a5;
                font-weight: 800;
                font-size: 0.82rem;
                white-space: nowrap;
            }

            .sp-page.sp-picks-page .sp-next-show-locked {
                border-radius: 999px;
                padding: 0.2rem 0.6rem;
                border: 1px solid #bfe0c8;
                background: #effaf2;
                color: #1f7a49;
                font-weight: 800;
                font-size: 0.82rem;
                white-space: nowrap;
            }

            .sp-page.sp-picks-page .sp-next-show-expired {
                border-radius: 999px;
                padding: 0.2rem 0.6rem;
                border: 1px solid #f0b4b4;
                background: #fff1f1;
                color: #b42318;
                font-weight: 800;
                font-size: 0.82rem;
                white-space: nowrap;
            }

            .sp-page.sp-picks-page .sp-next-show-empty {
                color: #4b5f73;
                font-size: 0.92rem;
                font-weight: 600;
            }

            .sp-page.sp-picks-page .sp-user-score-hero {
                border: 1px solid #cfe9db;
                border-radius: 1.1rem;
                background: linear-gradient(140deg, #ecfdf3 0%, #ffffff 58%, #f2fff8 100%);
                padding: 1rem;
                position: relative;
                overflow: hidden;
            }

            .sp-page.sp-picks-page .sp-user-score-hero.average {
                border-color: #c8ddf0;
                background: linear-gradient(132deg, #e9f6ff 0%, #ffffff 52%, #f4fbff 100%);
            }

            .sp-page.sp-picks-page .sp-user-score-label {
                font-size: 0.76rem;
                letter-spacing: 0.04em;
                text-transform: uppercase;
                color: #5c7189;
                font-weight: 700;
            }

            .sp-page.sp-picks-page .sp-user-score-value {
                font-size: clamp(2.2rem, 8vw, 3.5rem);
                line-height: 1;
                color: #1f7a49;
                font-weight: 800;
                margin-top: 0.35rem;
                text-shadow: 0 3px 10px rgba(31, 122, 73, 0.08);
            }

            .sp-page.sp-picks-page .sp-user-score-hero.average .sp-user-score-value {
                color: #145d91;
                text-shadow: 0 3px 10px rgba(20, 93, 145, 0.08);
            }

            .sp-page.sp-picks-page .sp-user-score-stats {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 0.65rem;
                margin-top: 0.75rem;
            }

            .sp-page.sp-picks-page .sp-user-score-stat {
                border: 1px solid #d8e8f6;
                border-radius: 0.9rem;
                background: #fbfdff;
                padding: 0.65rem 0.75rem;
            }

            .sp-page.sp-picks-page .sp-user-score-stat-label {
                font-size: 0.76rem;
                letter-spacing: 0.02em;
                text-transform: uppercase;
                color: #5c7189;
                font-weight: 700;
            }

            .sp-page.sp-picks-page .sp-user-score-stat-value {
                font-size: 1.5rem;
                line-height: 1.2;
                color: #153e75;
                font-weight: 800;
                margin-top: 0.2rem;
            }

            .sp-page.sp-picks-page .sp-selected-show-label {
                margin-top: 0.5rem;
                color: #4b5f73;
                font-size: 0.92rem;
                line-height: 1.35;
                white-space: normal;
                word-break: break-word;
            }

            .sp-page.sp-picks-page .sp-show-status-icon {
                width: 1.15rem;
                text-align: center;
                flex: 0 0 1.15rem;
                font-size: 0.95rem;
            }

            .sp-page.sp-picks-page .sp-show-status-icon.is-locked {
                color: #b42318;
            }

            .sp-page.sp-picks-page .sp-show-status-icon.is-picked {
                color: #4753d6;
            }

            .sp-page.sp-picks-page .sp-show-status-icon.is-available {
                color: #1f7a49;
            }

            .sp-page.sp-picks-page .sp-show-link {
                display: block;
                border: 1px solid #d8e8f6;
                border-radius: 0.85rem;
                padding: 0.42rem 0.56rem;
                background: linear-gradient(180deg, #fbfdff 0%, #f5faff 100%);
                color: #16324a;
                text-decoration: none;
                transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
            }

            .sp-page.sp-picks-page .sp-show-link:hover {
                text-decoration: none;
                border-color: #9ecdf1;
                background: #eef7ff;
                box-shadow: 0 1px 6px rgba(13, 103, 165, 0.12);
            }

            .sp-page.sp-picks-page .sp-show-link:focus-visible {
                outline: 2px solid #7dbff0;
                outline-offset: 2px;
            }

            .sp-page.sp-picks-page .sp-show-line {
                display: block;
                min-width: 0;
            }

            .sp-page.sp-picks-page .sp-show-line-top {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.5rem;
                margin-bottom: 0.12rem;
            }

            .sp-page.sp-picks-page .sp-show-date {
                font-size: 0.9rem;
                font-weight: 700;
                letter-spacing: 0.01em;
                color: #2b6cb0;
            }

            .sp-page.sp-picks-page .sp-show-location {
                font-size: 1.02rem;
                line-height: 1.3;
                font-weight: 700;
                color: #153e75;
            }

            .sp-page.sp-picks-page .sp-show-venue {
                margin-top: 0.04rem;
                font-size: 0.93rem;
                line-height: 1.35;
                color: #4b5f73;
            }

            .sp-page.sp-picks-page .sp-show-score {
                margin-left: 0;
                font-weight: 700;
                border-radius: 999px;
                border: 1px solid #bfe0c8;
                background: #effaf2;
                font-size: 0.82rem;
                padding: 0.1rem 0.45rem;
                white-space: nowrap;
            }

            .sp-page.sp-picks-page .sp-show-score.win {
                color: #1f7a49;
            }

            .sp-page.sp-picks-page .sp-show-score.loss {
                border-color: #efbcbc;
                background: #fff3f3;
                color: #b72222;
            }

            .sp-page.sp-picks-page .sp-show-score.pending {
                border-color: #cbd8e6;
                background: #f5f8fc;
                color: #5c7189;
                min-width: 1.9rem;
                text-align: center;
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-table .ui-datatable-data > tr > td {
                padding: 0.3rem 0.45rem;
                overflow-wrap: anywhere;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-table .ui-datatable-tablewrapper table {
                width: 100%;
                table-layout: fixed;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-toolbar {
                display: flex;
                justify-content: flex-end;
                align-items: center;
                gap: 0.55rem;
                margin-bottom: 0.7rem;
                flex-wrap: wrap;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-sort-label {
                font-size: 0.82rem;
                font-weight: 700;
                color: #4b5f73;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-sort {
                min-width: 19rem;
            }

            .sp-page.sp-picks-page .sp-submitted-picks-loading {
                display: inline-flex;
                align-items: center;
                gap: 0.45rem;
                font-weight: 700;
                color: #2f4e68;
                background: rgba(255, 255, 255, 0.9);
                border: 1px solid #d8e8f6;
                border-radius: 999px;
                padding: 0.35rem 0.75rem;
            }

            .sp-page.sp-picks-page .sp-search-label {
                font-weight: 700;
            }

            .sp-page.sp-picks-page .sp-show-search-row {
                display: flex;
                align-items: stretch;
                gap: 0.4rem;
            }

            .sp-page.sp-picks-page .sp-show-search-row .ui-autocomplete {
                flex: 1 1 auto;
                min-width: 0;
            }

            .sp-page.sp-picks-page .sp-clear-show-btn.ui-button {
                width: 2.2rem;
                min-width: 2.2rem;
                padding: 0;
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            .sp-page.sp-picks-page .sp-rules-row {
                margin-top: 0.9rem;
                margin-bottom: 1rem;
                display: flex;
                justify-content: flex-end;
            }

            .sp-page.sp-picks-page .sp-rules-pill {
                display: inline-flex;
                align-items: center;
                border-radius: 999px;
                padding: 0.4rem 0.9rem;
                border: 1px solid #9ecdf1;
                background: linear-gradient(140deg, #edf8ff 0%, #f8fcff 100%);
                color: #0d67a5;
                font-weight: 700;
                text-decoration: none;
                transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
            }

            .sp-page.sp-picks-page .sp-rules-pill:hover {
                background: #e1f2ff;
                border-color: #77b8e5;
                color: #084b77;
            }

            .sp-page.sp-picks-page .sp-rules-pill:focus-visible {
                outline: 2px solid #7dbff0;
                outline-offset: 2px;
            }

            .sp-page.sp-picks-page .sp-scorecard-filter-presets {
                display: flex;
                flex-wrap: wrap;
                gap: 0.5rem;
                padding-top: 0.5rem;
                margin-bottom: 0.2rem;
            }

            .sp-page.sp-picks-page .sp-scorecard-filter-pill.is-active,
            .sp-page.sp-picks-page .sp-scorecard-filter-pill.is-active:hover,
            .sp-page.sp-picks-page .sp-scorecard-filter-pill.is-active:focus,
            .sp-page.sp-picks-page .sp-scorecard-filter-pill.is-active:focus-visible {
                background: linear-gradient(140deg, #0d67a5 0%, #0a4f7d 100%) !important;
                border-color: #083e63 !important;
                color: #ffffff !important;
                box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16), 0 1px 6px rgba(8, 62, 99, 0.25);
            }

            .sp-page.sp-picks-page .sp-scorecard-filter-summary {
                margin: 0.15rem 0 0.75rem;
                color: #35536f;
                font-size: 0.93rem;
                font-weight: 600;
            }

            .sp-page.sp-picks-page .sp-scorecard-filter-indicator {
                margin-left: 0.4rem;
                color: #0d67a5;
                font-size: 0.9rem;
                vertical-align: middle;
            }

            .sp-page.sp-picks-page .sp-filter-has-value.ui-selectcheckboxmenu {
                border-color: #57a8de;
                box-shadow: 0 0 0 1px rgba(13, 103, 165, 0.14);
                background: #eef7ff;
            }

            .sp-page.sp-picks-page .sp-rules-content {
                display: grid;
                gap: 0.85rem;
                max-height: 65vh;
                overflow: auto;
                padding-right: 0.25rem;
            }

            .sp-page.sp-picks-page .sp-rules-block {
                border: 1px solid #dbe7f3;
                border-radius: 0.8rem;
                background: #fbfdff;
                padding: 0.75rem 0.8rem;
            }

            .sp-page.sp-picks-page .sp-rules-title {
                font-size: 1rem;
                font-weight: 700;
                color: #153e75;
                margin-bottom: 0.4rem;
            }

            .sp-page.sp-picks-page .sp-rules-list {
                margin: 0;
                padding-left: 1rem;
                display: grid;
                gap: 0.3rem;
            }

            .sp-page.sp-picks-page .sp-rules-notes {
                margin-top: 0.65rem;
            }

            .sp-page.sp-picks-page .sp-rules-score-grid {
                display: grid;
                gap: 0.45rem;
            }

            .sp-page.sp-picks-page .sp-rules-score-row {
                border: 1px solid #d9e5f2;
                border-radius: 0.75rem;
                background: #ffffff;
                padding: 0.55rem 0.65rem;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.6rem;
            }

            .sp-page.sp-picks-page .sp-rules-score-label {
                font-size: 0.92rem;
                color: #334e68;
                line-height: 1.3;
            }

            .sp-page.sp-picks-page .sp-rules-score-points {
                min-width: 3.1rem;
                text-align: right;
                font-size: 1.1rem;
                font-weight: 800;
            }

            .sp-page.sp-picks-page .sp-rules-score-points.win {
                color: #1f7a49;
            }

            .sp-page.sp-picks-page .sp-rules-score-points.loss {
                color: #b72222;
            }

            .sp-page.sp-picks-page .sp-rules-score-points.neutral {
                color: #2b6cb0;
            }

            .sp-page.sp-picks-page .sp-rules-dialog.ui-dialog {
                width: min(760px, 94vw) !important;
            }

            .sp-page.sp-picks-page .sp-rules-dialog .ui-dialog-content {
                max-height: 72vh;
                overflow: auto;
            }

            /*
             * Rules dialog is rendered outside .sp-page in PrimeFaces, so keep
             * dialog-local selectors for content styling and scrolling.
             */
            .sp-rules-dialog.ui-dialog {
                width: min(760px, 94vw) !important;
            }

            .sp-rules-dialog .ui-dialog-content {
                max-height: 72vh;
                overflow: auto;
            }

            .sp-rules-dialog .sp-rules-content {
                display: grid;
                gap: 0.85rem;
                max-height: 65vh;
                overflow: auto;
                padding-right: 0.25rem;
            }

            .sp-rules-dialog .sp-rules-block {
                border: 1px solid #dbe7f3;
                border-radius: 0.8rem;
                background: #fbfdff;
                padding: 0.75rem 0.8rem;
            }

            .sp-rules-dialog .sp-rules-title {
                font-size: 1rem;
                font-weight: 700;
                color: #153e75;
                margin-bottom: 0.4rem;
            }

            .sp-rules-dialog .sp-rules-list {
                margin: 0;
                padding-left: 1rem;
                display: grid;
                gap: 0.3rem;
            }

            .sp-rules-dialog .sp-rules-notes {
                margin-top: 0.65rem;
            }

            .sp-rules-dialog .sp-rules-score-grid {
                display: grid;
                gap: 0.45rem;
            }

            .sp-rules-dialog .sp-rules-gap-tier-grid {
                margin-top: 0.65rem;
                margin-bottom: 0.65rem;
            }

            .sp-rules-dialog .sp-rules-score-row {
                border: 1px solid #d9e5f2;
                border-radius: 0.75rem;
                background: #ffffff;
                padding: 0.55rem 0.65rem;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 0.6rem;
            }

            .sp-rules-dialog .sp-rules-score-label {
                font-size: 0.92rem;
                color: #334e68;
                line-height: 1.3;
            }

            .sp-rules-dialog .sp-rules-score-points {
                min-width: 3.1rem;
                text-align: right;
                font-size: 1.1rem;
                font-weight: 800;
            }

            .sp-rules-dialog .sp-rules-score-points.win {
                color: #1f7a49;
            }

            .sp-rules-dialog .sp-rules-score-points.loss {
                color: #b72222;
            }

            .sp-rules-dialog .sp-rules-score-points.neutral {
                color: #2b6cb0;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item {
                display: flex;
                align-items: center;
                padding: 0.55rem 0.7rem;
                border: 0 !important;
                box-shadow: none !important;
                outline: 0 !important;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-items > li,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-items .ui-autocomplete-item,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-table td,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-table tr {
                border: 0 !important;
                box-shadow: none !important;
                outline: 0 !important;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-items {
                border: 0 !important;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                font-size: 0.75rem;
                width: 1.4rem;
                height: 1.4rem;
                flex: 0 0 1.4rem;
                margin-right: 0.45rem;
                border-radius: 999px;
                color: #ffffff;
                border: 1px solid transparent;
                box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22);
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-available {
                background: #1f7a49;
                border-color: #16653b;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-picked {
                background: #2563eb;
                border-color: #1e4fc7;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-locked {
                background: #c93030;
                border-color: #a62828;
            }

            /* Autocomplete panel is appended outside .sp-page, so keep a global id-scoped spacing rule. */
            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon {
                margin-right: 0.45rem !important;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip {
                margin-left: 0.5rem;
                padding: 0.1rem 0.45rem;
                border-radius: 999px;
                font-size: 0.72rem;
                font-weight: 700;
                background: #edf3f9;
                color: #4f6478;
                display: inline-flex;
                align-items: center;
                border: 1px solid #cfdbe8;
                line-height: 1.2;
                white-space: nowrap;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-available {
                background: #eaf8ef;
                color: #1f7a49;
                border-color: #bfe4cd;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-locked {
                background: #fff1f1;
                color: #b42318;
                border-color: #f3c0c0;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-picked {
                background: #edf3ff;
                color: #1f4ab8;
                border-color: #c9d8fb;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item:hover {
                background: #dff0ff !important;
                color: #183b57 !important;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip {
                background: #c8e5ff;
                color: #16466d;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-available,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-available {
                background: #d6f4e0;
                color: #16603a;
                border-color: #b2e5c7;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-locked,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-locked {
                background: #ffdcdc;
                color: #9b1c1c;
                border-color: #f1b7b7;
            }

            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-picked,
            .sp-page.sp-picks-page #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-picked {
                background: #dce8ff;
                color: #193f9a;
                border-color: #b7cbfb;
            }

            /*
             * Autocomplete panel is appended outside .sp-page, so use id-scoped
             * global selectors for reliable status icon/chip styling.
             */
            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon {
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                width: 1.62rem !important;
                height: 1.62rem !important;
                margin-right: 0.45rem !important;
                border-radius: 999px !important;
                font-size: 0.95rem !important;
                color: #ffffff !important;
                border: 0.5px solid transparent !important;
                box-shadow: inset 0 0 0 0.5px rgba(255, 255, 255, 0.22) !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-available {
                background: #1f7a49 !important;
                border-color: #16653b !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-picked {
                background: #2563eb !important;
                border-color: #1e4fc7 !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-show-status-icon.is-locked {
                background: #c93030 !important;
                border-color: #a62828 !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip {
                margin-left: 0.5rem !important;
                padding: 0.12rem 0.5rem !important;
                border-radius: 999px !important;
                border: 1px solid #cfdbe8 !important;
                display: inline-flex !important;
                align-items: center !important;
                line-height: 1.2 !important;
                white-space: nowrap !important;
                font-size: 0.72rem !important;
                font-weight: 700 !important;
                background: #edf3f9 !important;
                color: #4f6478 !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-available {
                background: #eaf8ef !important;
                color: #1f7a49 !important;
                border-color: #bfe4cd !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-picked {
                background: #edf3ff !important;
                color: #1f4ab8 !important;
                border-color: #c9d8fb !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item .sp-lock-chip.is-locked {
                background: #fff1f1 !important;
                color: #b42318 !important;
                border-color: #f3c0c0 !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-available,
            #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-available {
                background: #d6f4e0 !important;
                color: #16603a !important;
                border-color: #b2e5c7 !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-picked,
            #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-picked {
                background: #dce8ff !important;
                color: #193f9a !important;
                border-color: #b7cbfb !important;
            }

            #mainForm\:showAuto_panel .ui-autocomplete-item.ui-state-highlight .sp-lock-chip.is-locked,
            #mainForm\:showAuto_panel .ui-autocomplete-item:hover .sp-lock-chip.is-locked {
                background: #ffdcdc !important;
                color: #9b1c1c !important;
                border-color: #f1b7b7 !important;
            }

            @media (max-width: 900px) {
                .sp-page.sp-picks-page .sp-user-score-stats {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }
            }

            @media (max-width: 640px) {
                .sp-page.sp-picks-page .sp-user-score-stats {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }

                .sp-page.sp-picks-page .sp-show-picker-section {
                    padding: 0.72rem 0.62rem 0.5rem;
                    margin-bottom: 1.2rem;
                }

                .sp-page.sp-picks-page .sp-next-show-row {
                    flex-direction: column;
                    align-items: flex-start;
                }

                .sp-page.sp-picks-page .sp-next-show-meta {
                    width: 100%;
                }

                .sp-page.sp-picks-page .sp-submitted-picks-toolbar {
                    justify-content: flex-start;
                }

                .sp-page.sp-picks-page .sp-submitted-picks-sort {
                    min-width: 100%;
                }
            }

            @media (max-width: 383px) {
                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator {
                    display: block;
                    padding: 0.4rem 0.35rem;
                    text-align: center;
                    white-space: normal;
                }

                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator > * {
                    float: none !important;
                    display: inline-block;
                    vertical-align: middle;
                }

                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-pages {
                    display: inline-block;
                    margin: 0 0.1rem;
                    float: none !important;
                }

                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-first,
                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-prev,
                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-next,
                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-last,
                .sp-page.sp-picks-page .sp-submitted-picks-table .ui-paginator .ui-paginator-pages .ui-paginator-page {
                    margin: 0 0.0625em !important;
                    float: none !important;
                }
            }

            .sp-page.sp-leaderboard-page {
                max-width: 1050px;
                margin: 0 auto;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-heading {
                margin-top: 0;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-tabs {
                margin-bottom: 0.85rem;
                gap: 0.6rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-month-heading {
                margin-bottom: 0.6rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-step-heading {
                margin-top: 1.25rem;
                margin-bottom: 0.45rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-step-title {
                font-size: clamp(1.02rem, 2.4vw, 1.2rem);
                color: #0d67a5;
                font-weight: 800;
                line-height: 1.2;
                word-break: break-word;
            }

            .sp-page.sp-leaderboard-page #showTotalsSection {
                scroll-margin-top: 6.5rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-table .ui-datatable-data > tr > td {
                padding: 0.34rem 0.45rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-row {
                border-color: #c9def0;
                background: linear-gradient(180deg, #ffffff 0%, #f6fbff 100%);
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-row .sp-show-line + .sp-show-line {
                margin-top: 0.1rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-name {
                font-size: clamp(0.92rem, 2vw, 1rem);
                font-weight: 700;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-row {
                display: flex;
                align-items: stretch;
                gap: 0.6rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-row.sp-show-link {
                padding: 0;
                overflow: hidden;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-main {
                flex: 1 1 auto;
                min-width: 0;
                display: flex;
                flex-direction: column;
                justify-content: center;
                padding: 0.42rem 0.56rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-main .sp-show-line-top {
                justify-content: flex-start;
                margin-bottom: 0;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-score-wrap {
                flex: 0 0 auto;
                min-width: 4.1rem;
                padding: 0 0.62rem;
                border-radius: 0 0.82rem 0.82rem 0;
                border: 1px solid #bfe0c8;
                background: #effaf2;
                color: #1f7a49;
                display: flex;
                align-items: center;
                justify-content: center;
                align-self: stretch;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-score-wrap.loss {
                border-color: #efbcbc;
                background: #fff3f3;
                color: #b72222;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-score-wrap.pending {
                border-color: #cbd8e6;
                background: #f5f8fc;
                color: #5c7189;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-user-score-value {
                font-size: clamp(0.95rem, 2.1vw, 1.05rem);
                font-weight: 800;
                line-height: 1;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-showusers-table .sp-leaderboard-entry-note {
                font-size: 0.74rem;
                opacity: 0.9;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-row {
                display: flex;
                align-items: stretch;
                gap: 0;
                border: 1px solid #d8e8f6;
                border-radius: 0.85rem;
                overflow: hidden;
                background: linear-gradient(180deg, #fbfdff 0%, #f5faff 100%);
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-main {
                flex: 1 1 auto;
                min-width: 0;
                display: flex;
                flex-direction: column;
                justify-content: center;
                padding: 0.42rem 0.56rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-user {
                font-size: 0.95rem;
                font-weight: 700;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-avg-wrap {
                flex: 0 0 auto;
                min-width: 4.1rem;
                padding: 0.2rem 0.62rem;
                border-radius: 0 0.82rem 0.82rem 0;
                border-left: 1px solid #bfe0c8;
                background: #effaf2;
                color: #1f7a49;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                align-self: stretch;
                gap: 0.1rem;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-avg-wrap.loss {
                border-left-color: #efbcbc;
                background: #fff3f3;
                color: #b72222;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-avg-prefix {
                font-size: 0.68rem;
                font-weight: 700;
                line-height: 1;
                text-transform: uppercase;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-month-avg-value {
                font-size: 0.94rem;
                font-weight: 800;
                line-height: 1;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr > td {
                cursor: default !important;
                -webkit-tap-highlight-color: transparent;
                pointer-events: none !important;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-highlight,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-hover,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-active,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-focus,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-highlight > td,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-hover > td,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-active > td,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr.ui-state-focus > td {
                background: inherit !important;
                box-shadow: none !important;
                outline: none !important;
                border-color: inherit !important;
            }

            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr:focus,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .ui-datatable-data > tr > td:focus,
            .sp-page.sp-leaderboard-page .sp-leaderboard-monthly-table .sp-leaderboard-row:focus {
                outline: none !important;
                box-shadow: none !important;
            }

            @media (max-width: 640px) {
                .sp-page.sp-leaderboard-page .sp-leaderboard-tabs {
                    justify-content: flex-start;
                }

                .sp-page.sp-leaderboard-page .sp-user-score-stats {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }
            }

            @media (max-width: 420px) {
                .sp-page.sp-leaderboard-page .sp-user-score-stats {
                    grid-template-columns: 1fr;
                }
            }

/* Single show page styles aligned with Show Picks look and feel */
            .sp-page.sp-show-page {
                max-width: 1300px;
                margin: 0 auto;
            }

            .sp-page.sp-show-page .sp-show-nav {
                display: grid;
                grid-template-columns: 1fr auto 1fr;
                gap: 0.55rem;
                margin-bottom: 0.75rem;
                align-items: center;
            }

            .sp-page.sp-show-page .sp-show-nav-cell {
                display: flex;
                align-items: center;
            }

            .sp-page.sp-show-page .sp-show-nav-cell.left {
                justify-content: flex-start;
            }

            .sp-page.sp-show-page .sp-show-nav-cell.center {
                justify-content: center;
            }

            .sp-page.sp-show-page .sp-show-nav-cell.right {
                justify-content: flex-end;
            }

            .sp-page.sp-show-page .sp-show-nav-btn.ui-button {
                border-radius: 999px;
                border-color: #9ecdf1;
                color: #0d67a5;
                background: linear-gradient(140deg, #edf8ff 0%, #f8fcff 100%);
            }

            .sp-page.sp-show-page .sp-show-nav-btn.ui-button:hover {
                border-color: #77b8e5;
                background: #e1f2ff;
                color: #084b77;
            }

            .sp-page.sp-show-page .sp-show-empty-title {
                font-size: clamp(1.5rem, 4.2vw, 2.1rem);
                color: #0d67a5;
                font-weight: 800;
                line-height: 1.1;
            }

            .sp-page.sp-show-page .sp-show-hero {
                border: 1px solid #c8ddf0;
                border-radius: 1.1rem;
                background: linear-gradient(132deg, #e9f6ff 0%, #ffffff 52%, #f4fbff 100%);
            }

            .sp-page.sp-show-page .sp-show-city {
                color: #0d67a5;
                text-shadow: 0 3px 10px rgba(13, 103, 165, 0.08);
                font-size: inherit;
                line-height: inherit;
            }

            .sp-page.sp-show-page .sp-show-hero .p-3 {
                --sp-cityline-size: min(6.4vw, 2.8rem);
            }

            .sp-page.sp-show-page .sp-show-cityline {
                display: inline-block;
                max-width: 100%;
                text-align: center;
                font-size: var(--sp-cityline-size);
                line-height: 1.08;
            }

            .sp-page.sp-show-page .sp-show-date-line {
                display: flex;
                justify-content: center;
                text-align: center;
                margin-top: 0.35rem;
                margin-bottom: 0.35rem;
                font-size: calc(var(--sp-cityline-size) - 1pt);
                line-height: 1.15;
                color: #355b7a;
                font-weight: 600;
            }

            .sp-page.sp-show-page .sp-show-venue {
                color: #153e75;
                font-weight: 700;
            }

            .sp-page.sp-show-page .sp-show-hero .sp-show-venue-header {
                font-size: clamp(1.33rem, 4.4vw, 2.33rem);
            }

            .sp-page.sp-show-page .sp-show-band-panel-value {
                color: #0f2d56;
                font-size: clamp(1.35rem, 2.8vw, 1.8rem);
                font-weight: 700;
                line-height: 1.2;
            }

            .sp-page.sp-show-page .sp-section-heading {
                margin-bottom: 0.65rem;
            }

            .sp-page.sp-show-page .sp-show-card {
                border: 1px solid #d8e8f6;
                border-radius: 1rem;
                background: linear-gradient(180deg, #fbfdff 0%, #f5faff 100%);
            }

            .sp-page.sp-show-page .grid.sp-show-card {
                margin-top: 0;
            }

            .sp-page.sp-show-page .sp-show-card .ui-button {
                border-radius: 0.75rem;
            }

            .sp-page.sp-show-page .sp-show-comments {
                display: block;
                border-left: 4px solid #38a3e3;
                border-radius: 0.65rem;
                background: #f2f9ff;
                padding: 0.55rem 0.7rem;
            }

            .sp-page.sp-show-page .sp-setlist-list {
                margin-top: 0.45rem;
                padding-left: 1.25rem;
            }

            .sp-page.sp-show-page .sp-show-grid > .col-12 {
                padding-top: 0;
            }

            @media (max-width: 767px) {
                .sp-page.sp-show-page .sp-show-nav {
                    margin-bottom: 0.55rem;
                }

                .sp-page.sp-show-page .sp-show-nav-btn.ui-button {
                    min-width: 2.3rem;
                }
            }

/* Home page styles aligned with Show Picks look and feel */
            .sp-page.sp-home-page {
                max-width: 1300px;
                margin: 0 auto;
            }

            .sp-page.sp-home-page .sp-home-archive {
                border: 1px solid #c8ddf0;
                border-radius: 1rem;
                background: linear-gradient(132deg, #e9f6ff 0%, #ffffff 52%, #f4fbff 100%);
            }

            .sp-page.sp-home-page .sp-home-archive-pill {
                letter-spacing: 0.03em;
            }

            .sp-page.sp-home-page .sp-home-grid {
                margin-top: 0.25rem;
            }

            .sp-page.sp-home-page .sp-section-heading {
                margin-bottom: 0.65rem;
            }

            .sp-page.sp-home-page .sp-home-section-subtitle {
                color: #4b5f73;
                font-size: 0.86rem;
                margin-top: 0.2rem;
                line-height: 1.3;
            }

            .sp-page.sp-home-page .sp-home-card {
                border: 1px solid #d8e8f6;
                border-radius: 1rem;
                background: linear-gradient(180deg, #fbfdff 0%, #f5faff 100%);
                padding: 0.75rem;
            }

            .sp-page.sp-home-page .sp-home-show-row {
                border: 1px solid #c8ddf0;
                border-radius: 0.95rem;
                background: linear-gradient(132deg, #e9f6ff 0%, #ffffff 52%, #f4fbff 100%);
                padding: 0.85rem 0.95rem !important;
                margin: 0.6rem 0;
            }

            .sp-page.sp-home-page .sp-home-next-show-btn {
                display: block;
                text-decoration: none;
            }

            .sp-page.sp-home-page .sp-home-next-show-btn:hover {
                text-decoration: none;
            }

            .sp-page.sp-home-page .sp-home-next-show-btn:hover .sp-home-show-row {
                background: #e1f2ff;
                border-color: #77b8e5;
            }

            .sp-page.sp-home-page .sp-home-next-show-btn.is-disabled {
                cursor: default;
            }

            .sp-page.sp-home-page .sp-home-next-show-btn.is-disabled .sp-home-show-row,
            .sp-page.sp-home-page .sp-home-next-show-btn.is-disabled:hover .sp-home-show-row {
                background: linear-gradient(160deg, #f7fbff 0%, #ffffff 100%);
                border-color: #cfddec;
                box-shadow: none;
            }

            .sp-page.sp-home-page .sp-home-next-show-copy {
                min-width: 0;
            }

            .sp-page.sp-home-page .js-home-next-show-status {
                display: inline-flex;
                align-items: center;
                gap: 0.35rem;
            }

            .sp-page.sp-home-page .sp-next-show-meta {
                display: inline-flex;
                flex-direction: column;
                align-items: flex-end;
                gap: 0.18rem;
            }

            .sp-page.sp-home-page .sp-home-next-show-pill-label {
                color: #2f6088;
                font-size: 0.68rem;
                font-weight: 800;
                letter-spacing: 0.04em;
                text-transform: uppercase;
                line-height: 1.1;
            }

            .sp-page.sp-home-page .sp-home-show-city {
                color: #0d67a5;
            }

            .sp-page.sp-home-page .sp-home-show-venue {
                color: #153e75;
            }

            .sp-page.sp-home-page .sp-home-empty-note {
                color: #153e75;
                font-size: 1.15rem;
                font-weight: 700;
                line-height: 1.35;
            }

            .sp-page.sp-home-page .sp-home-list {
                margin: 0;
                padding-left: 1.2rem;
            }

            .sp-page.sp-home-page .sp-home-list li:last-child {
                margin-bottom: 0;
            }

            .sp-page.sp-home-page .sp-home-embed {
                border: 1px solid #d8e8f6;
                border-radius: 1rem;
                background: linear-gradient(180deg, #fbfdff 0%, #f5faff 100%);
            }

            .sp-page.sp-home-page .sp-home-scroller .grid.surface-card {
                border-left: 0;
                border-right: 0;
                border-bottom: 0;
                border-radius: 0;
                background: transparent;
                padding: 0 !important;
            }

            .sp-page.sp-home-page .sp-home-scroller .grid.surface-card.border-top-1 {
                border-top-width: 1px !important;
                border-top-style: solid !important;
            }

            .sp-band-name-inline {
                color: #0f2d56;
            }

            @media (max-width: 767px) {
                .sp-page.sp-home-page .sp-home-card {
                    padding: 0.55rem;
                }

                .sp-page.sp-home-page .sp-home-show-row {
                    padding: 0.65rem 0.75rem !important;
                }
            }
