/* Editable tariff copy, separate from numeric prices and eligibility rules. */
#root .content-editor .fs-price-presentation-editor{padding:16px;border:1px solid #d8e5ed;border-radius:12px;background:#f8fbfd;}
#root .content-editor .fs-price-presentation-editor h3{margin:0 0 8px!important;font-size:17px!important;}
#root .content-editor .fs-price-presentation-editor h4{margin:0 0 12px!important;font-size:14px!important;}
#root .content-editor .fs-price-presentation-group{display:grid;gap:12px;min-width:0;margin-top:16px;}
#root .content-editor .fs-price-presentation-group+.fs-price-presentation-group{padding-top:16px;border-top:1px solid #d8e5ed;}
#root .content-editor .fs-price-presentation-group>label{display:grid!important;gap:6px!important;min-width:0;}
#root .content-editor .fs-price-presentation-group input{width:100%;max-width:100%;min-width:0;box-sizing:border-box;}
#root .content-editor .fs-price-presentation-preview{padding:14px;border:1px solid #dae7e9;border-radius:10px;background:#edf5f5;overflow-wrap:anywhere;}
#root .fs-price-presentation-preview>.fs-price-preview-caption{display:block;font-size:10px;color:#718392;margin-bottom:8px;}
#root .fs-price-presentation-preview>.fs-price-label{display:block;font-size:11px;font-weight:650;text-transform:uppercase;color:#73828c;line-height:1.4;}
#root .fs-price-presentation-preview>strong{display:block;font-size:20px;font-weight:700;color:#102b45;line-height:1.35;}
#root .fs-price-presentation-preview>.fs-price-info{display:block;margin-top:5px;font-size:12px;font-weight:400;color:#687785;line-height:1.5;}
#root .offer-modal .fs-offer-unit-price{margin:14px 0;padding:12px 14px;background:#f2f7fa;border:1px solid #dce7ee;border-radius:10px;}
#root .offer-modal .fs-offer-unit-price>.fs-price-label{display:block;font-size:11px;font-weight:650;color:#73828c;line-height:1.4;}
#root .offer-modal .fs-offer-unit-price>.fs-card-price{display:block;font-size:20px;line-height:1.35;color:#102b45;}
.fs-gift-allowance>.fs-price-label{display:block;font-size:11px;font-weight:650;line-height:1.4;}
.fs-gift-allowance>strong{display:block;font-size:18px;line-height:1.4;}
/* One page banner, across member and administrator screens. */
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin){
  position:relative!important;isolation:isolate;display:flex!important;align-items:center!important;justify-content:space-between!important;
  flex:1 1 100%!important;grid-column:1/-1!important;gap:24px!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  height:auto!important;min-height:176px!important;margin:0 0 22px!important;padding:28px 32px!important;
  border:0!important;border-radius:22px!important;background:linear-gradient(110deg,#081e38 0%,#0d4465 62%,#167d93 100%)!important;
  color:#fff!important;box-shadow:0 10px 26px #081e3814!important;overflow:hidden!important;
}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin)::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:320px;height:320px;right:-70px;top:-150px;border:48px solid #ffffff05;border-radius:50%;background:transparent;box-shadow:0 0 0 48px #ffffff04;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-copy,.exclusive-copy){position:relative;z-index:1;flex:1 1 auto!important;min-width:0!important;max-width:850px!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) h1{font-family:Outfit,Arial,sans-serif!important;font-size:30px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:-.025em!important;margin:8px 0 10px!important;max-width:100%!important;color:#fff!important;text-align:left!important;white-space:normal!important;overflow-wrap:break-word!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) h1 em{font:inherit!important;color:#90d4e4!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) p:not(.eyebrow){font-family:Outfit,Arial,sans-serif!important;font-size:14px!important;line-height:1.6!important;font-weight:400!important;letter-spacing:normal!important;max-width:760px!important;margin:0!important;color:#d5e8f2!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) .eyebrow{font-size:11px!important;font-weight:650!important;line-height:1.5!important;letter-spacing:.08em!important;text-transform:uppercase!important;margin:0!important;color:#b6dce9!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-logo,.exclusive-logo-card){position:relative!important;inset:auto!important;transform:none!important;flex:0 0 112px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:112px!important;height:112px!important;min-width:112px!important;padding:9px!important;margin:0!important;box-sizing:border-box!important;border:0!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-logo,.exclusive-logo-card) img{display:block!important;width:100%!important;max-width:100%!important;height:100%!important;object-fit:contain!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin).fs-page-banner--home>div:first-child{flex:1 1 auto;min-width:0;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) .fs-date-card{flex:0 1 auto!important;width:auto!important;max-width:280px;min-width:0;background:#ffffff12!important;border:1px solid #ffffff24!important;color:#fff!important;box-shadow:none!important;}
#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) .fs-date-card :is(strong,small){color:#e0eff5!important;}
#root :is(.events-header,.resources-heading,.notifications-heading,.fs-community-heading){display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;}
#root :is(.events-header,.resources-heading,.notifications-heading,.fs-community-heading)>.fs-page-banner{flex:0 0 auto!important;}
#root :is(.resources-heading,.notifications-heading,.fs-community-heading)>button{align-self:flex-end;max-width:100%;margin-bottom:16px;}
#root .fs-admin-page-heading{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
#root .fs-admin-page-heading>.fs-page-banner{display:flex!important;flex-wrap:wrap;}
#root .fs-admin-page-heading .fs-admin-banner-refresh{position:relative;z-index:1;flex:0 0 auto;margin:0 0 0 auto;max-width:100%;min-height:44px;padding:10px 18px;border:1px solid #ffffff80;border-radius:11px;background:#fff;color:#173d58;font:inherit;font-size:13px;font-weight:700;line-height:1.4;cursor:pointer;}
#root .fs-admin-page-heading .fs-admin-banner-refresh:hover:not(:disabled){background:#edf7fb;}
#root .fs-admin-page-heading .fs-admin-banner-refresh:focus-visible{outline:3px solid #fff;outline-offset:4px;}
#root .fs-admin-page-heading .fs-admin-banner-refresh:disabled{opacity:.65;cursor:wait;}
@media(max-width:700px){
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin){min-height:0!important;padding:20px!important;gap:16px!important;border-radius:18px!important;margin-bottom:18px!important;align-items:flex-start!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) h1{font-size:24px!important;line-height:1.25!important;margin:6px 0 9px!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) p:not(.eyebrow){font-size:13px!important;line-height:1.6!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) .eyebrow{font-size:10px!important;letter-spacing:.06em!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-logo,.exclusive-logo-card){flex-basis:68px!important;width:68px!important;min-width:68px!important;height:68px!important;padding:6px!important;border-radius:11px!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin).fs-page-banner--home{flex-direction:column!important;}
  #root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) .fs-date-card{max-width:100%!important;}
  #root .content-editor .fs-price-presentation-editor{padding:12px!important;}
  #root .content-editor .fs-price-presentation-group input{font-size:16px!important;}
}
@media(max-width:380px){#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin){flex-wrap:wrap!important;}#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-logo,.exclusive-logo-card){order:-1!important;flex-basis:52px!important;width:52px!important;min-width:52px!important;height:52px!important;}#root .fs-page-banner:is(.page-title,.welcome-row,.fs-page-banner--admin) :is(.fs-page-banner-copy,.exclusive-copy){flex-basis:100%!important;}}

/* Compact, distinct actions; keep the native disabled and submit behaviour. */
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;margin:20px 0 0!important;padding:16px 0 0!important;border-top:1px solid #e1e9ef!important;background:transparent!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>button{position:static!important;flex:0 1 auto!important;width:auto!important;max-width:100%!important;min-width:0!important;min-height:44px!important;height:auto!important;margin:0!important;padding:11px 18px!important;border-radius:11px!important;font-family:Outfit,Arial,sans-serif!important;font-size:14px!important;font-weight:600!important;line-height:1.4!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important;box-sizing:border-box!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-cancel{background:#fff!important;border:1px solid #d3dfe8!important;color:#526b7e!important;box-shadow:none!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-submit{background:linear-gradient(110deg,#102e49,#176582)!important;border:1px solid transparent!important;color:white!important;box-shadow:0 4px 12px #143b5614!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-submit:disabled{background:#eaf0f4!important;border-color:#dce5eb!important;color:#647889!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>button:focus-visible{outline:3px solid #73b7d5!important;outline-offset:3px!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-cancel:hover:not(:disabled){background:#f1f6f9!important;border-color:#b5cbd9!important;}
:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-submit:hover:not(:disabled){background:linear-gradient(110deg,#173c5c,#1b7797)!important;}
.fs-form-submit-arrow{flex:none;font-size:18px;line-height:1;}
@media(max-width:480px){:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer{gap:8px!important;}:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>.fs-form-submit{flex:1 1 180px!important;}:is(#root,.fs-detail-dialog) .fs-gift-form>.fs-form-footer>button{padding:11px 14px!important;}}

/* Keep the club signature on one line in the sidebar and mobile menu. */
#root .side-brand>div:last-child{min-width:0;}
#root .side-brand small{display:block!important;white-space:nowrap!important;font-size:9px!important;line-height:1.5!important;letter-spacing:.035em!important;word-break:normal!important;overflow-wrap:normal!important;}

/* Four coordinated legal cards; other resource lists keep their layout. */
#root .fs-legal-resources .fs-legal-resource-list{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-card{--legal-accent:#227b9f;--legal-tint:#edf7fb;display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;grid-template-rows:auto 1fr auto!important;align-items:start!important;gap:16px 12px!important;min-width:0!important;height:100%;box-sizing:border-box;padding:20px!important;border:1px solid #dce7ee!important;border-top:3px solid var(--legal-accent)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 5px 18px #0b2e4610!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-card:nth-child(2){--legal-accent:#548979;--legal-tint:#eff8f3;}
#root .fs-info-docs.fs-legal-resources .fs-resource-card:nth-child(3){--legal-accent:#8173a9;--legal-tint:#f4f1fa;}
#root .fs-info-docs.fs-legal-resources .fs-resource-card:nth-child(4){--legal-accent:#ac8448;--legal-tint:#faf5eb;}
#root .fs-info-docs.fs-legal-resources .fs-resource-symbol{grid-column:1!important;grid-row:1!important;align-self:start!important;width:38px!important;height:42px!important;border:0!important;border-radius:10px!important;background:var(--legal-tint)!important;color:var(--legal-accent)!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-copy{grid-column:2!important;grid-row:1!important;min-width:0!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-category{margin:0 0 7px!important;font-size:10px!important;line-height:1.45!important;letter-spacing:.055em!important;color:var(--legal-accent)!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-copy h3{font-size:17px!important;line-height:1.35!important;margin:0!important;color:#15374d!important;overflow-wrap:break-word!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-body{grid-column:1/-1!important;grid-row:2!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-description{font-size:13px!important;line-height:1.65!important;color:#637b8c!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-meta{font-size:11px!important;line-height:1.5!important;color:#7b8c98!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-actions{grid-column:1/-1!important;grid-row:3!important;align-self:end!important;padding-top:14px!important;border-top:1px solid #e8eef2!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-reader-actions{display:flex!important;width:100%!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-actions .fs-resource-open{display:inline-flex!important;justify-content:center!important;gap:8px!important;flex:1 1 auto!important;width:100%!important;min-height:44px!important;border-radius:9px!important;background:#f3f7fa!important;border:1px solid #dce7ed!important;color:#254f68!important;}
#root .fs-info-docs.fs-legal-resources .fs-resource-actions .fs-resource-open:hover{background:#e7f1f7!important;border-color:#b7d1e0!important;}
@media(max-width:1200px){#root .fs-legal-resources .fs-legal-resource-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:600px){#root .fs-legal-resources .fs-legal-resource-list{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}#root .fs-info-docs.fs-legal-resources .fs-resource-card{padding:18px!important;}}

/* Protection resources in two columns, separate from the four legal cards. */
#root .fs-info-docs .fs-resource-list:not(.fs-legal-resource-list){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;}
#root .fs-info-docs .fs-resource-list:not(.fs-legal-resource-list)>.fs-resource-card{grid-template-rows:auto 1fr auto!important;min-width:0!important;height:100%;box-sizing:border-box;border-radius:16px!important;}
#root .fs-info-docs .fs-resource-list:not(.fs-legal-resource-list) .fs-resource-actions{align-self:end!important;}
.fs-doc-modal .fs-resource-documents{padding:20px;min-width:0;}
.fs-resource-document-list{display:grid;gap:10px;margin-bottom:18px;}
.fs-resource-document-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid #dbe6ed;border-radius:12px;background:#f8fafc;}
.fs-resource-document-row.is-active{border-color:#81b8d1;background:#edf6fa;}
.fs-resource-document-row>div:first-child{min-width:0;}
.fs-resource-document-row strong{display:block;font-size:14px;color:#183a51;line-height:1.45;overflow-wrap:anywhere;}
.fs-resource-document-row small{display:block;font-size:12px;color:#6b8292;margin-top:3px;}
.fs-resource-document-buttons{display:flex;gap:8px;flex-wrap:wrap;flex:none;}
.fs-doc-modal .fs-resource-document-buttons :is(button,a){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;background:white;border:1px solid #c7dbe7;border-radius:9px;color:#28566f;font:inherit;font-size:13px;text-decoration:none;box-sizing:border-box;cursor:pointer;}
.fs-doc-modal .fs-resource-document-buttons button[aria-pressed=true]{background:#174b68;color:#fff;border-color:#174b68;}
.fs-doc-modal .fs-resource-document-buttons :is(button,a):focus-visible{outline:3px solid #70b4d3;outline-offset:3px;}
.fs-resource-document-preview>p{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#5b7587;}
.fs-resource-document-preview>p>a{color:#286b8d;}
.fs-doc-modal .fs-resource-document-preview iframe{display:block;width:100%!important;height:60vh!important;min-height:300px;border:1px solid #dbe5eb;border-radius:10px;background:#f2f5f7;}
@media(max-width:700px){#root .fs-info-docs .fs-resource-list:not(.fs-legal-resource-list){grid-template-columns:minmax(0,1fr)!important;}.fs-doc-modal .fs-resource-documents{padding:14px;}.fs-resource-document-row{align-items:stretch;flex-direction:column;}.fs-resource-document-buttons :is(button,a){flex:1;}}

/* Photo supplied for the No Finish Line event. */
#root :is(.event-thumb,.event-popup-visual)[style*="no-finish-line-monaco-2026.png"]{background-position:center 45%!important;}

/* One footer column prevents legacy flex wrapping from moving notes beside the button. */
#root .offer-grid .offer-card .offer-body{min-width:0!important;max-width:100%!important;box-sizing:border-box!important;}
#root .offer-grid .offer-card .offer-body>.offer-footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;align-items:stretch!important;justify-items:stretch!important;gap:6px!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;}
#root .offer-grid .offer-card .offer-body>.offer-footer>button{grid-column:1!important;grid-row:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;box-sizing:border-box!important;flex:none!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:44px!important;height:auto!important;margin:0!important;padding:11px 16px!important;font-size:14px!important;line-height:1.45!important;white-space:normal!important;overflow-wrap:anywhere!important;}
#root .offer-grid .offer-card .offer-body>.offer-footer>button i{flex:0 0 auto!important;margin:0!important;}
#root .offer-grid .offer-card .offer-body>.offer-footer>:is(.fs-offer-validity,.fs-request-deadline){grid-column:1!important;grid-row:auto!important;min-width:0!important;max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important;}
/* Keep the unavailable-card rule effective despite the stronger layout selectors. */
#root .offer-grid .offer-card.fs-unavailable .offer-body>.offer-footer>button{display:none!important;}

/* Mobile request headings no longer render the former leading icon. */
@media(max-width:700px){
  #root .fs-request-compact .fs-request-summary .request-card-head{grid-template-columns:minmax(0,1fr)!important;gap:7px!important;}
  #root .fs-request-compact .fs-request-summary .request-card-head>:is(.request-main,.status-chip){grid-column:1!important;min-width:0!important;}
  #root .fs-request-compact .fs-request-summary-link{margin-left:0!important;}
}
