/* RacqSense Standard | Complete setup details – screenshot-inspired progressive disclosure.
   Intentionally scoped to #setup.rspLayoutActive; legacy screens untouched. */
#setup.rspLayoutActive{max-width:none}
#setup .rspPage{width:100%;max-width:1320px;margin:0 auto;color:#f3faf2;padding-bottom:38px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
#setup .rspPage *{box-sizing:border-box;min-width:0}
#setup .rspHero{display:grid;grid-template-columns:minmax(0,1fr) 165px 285px;grid-template-rows:auto auto;
 gap:15px;position:relative;overflow:hidden;padding:23px;border:1px solid #31594b;border-radius:22px;
 background:radial-gradient(ellipse at 58% 10%,rgba(24,83,77,.28),transparent 48%),linear-gradient(125deg,#082824,#061c21 75%,#08221e);
 box-shadow:0 14px 40px rgba(0,0,0,.1)}
#setup .rspHeroLeft{align-self:start}
#setup .rspPills{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:17px}
#setup .rspBest{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;background:#d5ff59;color:#172309;font-size:11px;font-weight:950;letter-spacing:.035em}
#setup .rspRank{border:1px solid #4f6d68;border-radius:999px;padding:7px 12px;background:#08272b;color:#e7f7ec;font-size:11px;font-weight:850}
#setup .rspNav{display:inline-flex;gap:6px}
#setup .rspNav button{height:33px;width:33px;background:#12322e;border:1px solid #6a8c7b;color:#ecffe5;border-radius:50%;font-size:23px;line-height:1;cursor:pointer}
#setup .rspNav button:disabled{opacity:.3;cursor:not-allowed}
#setup .rspHero h1{font-size:clamp(27px,3vw,39px);line-height:1.08;letter-spacing:-.048em;font-weight:900;margin:0 0 11px;color:#f5fff3;overflow-wrap:anywhere}
#setup .rspSpecs{color:#b7c9c8;font-size:12px;line-height:1.5;margin:0 0 16px}
#setup .rspHeroDesc{font-size:14px;color:#d4e4dc;line-height:1.6;margin:0 0 19px;max-width:590px}
#setup .rspGoalChips{display:flex;flex-wrap:wrap;gap:7px}
#setup .rspGoalChip{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#092b20;border:1px solid #3c7856;color:#dbfac1;font-size:11px;font-weight:850}
#setup .rspRacketVisual{display:grid;place-items:center;align-self:stretch;overflow:hidden}
#setup .rspRacketVisual svg{width:100%;max-width:152px;height:234px;max-height:270px;filter:drop-shadow(0 4px 19px rgba(0,224,183,.18))}
#setup .rspScorePanel{align-self:start;background:linear-gradient(130deg,#0b3224,#09231f);border:1px solid #315d44;border-radius:17px;padding:18px}
#setup .rspScoreTitle{font-size:11px;letter-spacing:.08em;font-weight:950;color:#d0fb60}
#setup .rspScoreNum{font-size:clamp(36px,3.4vw,52px);line-height:1.1;letter-spacing:-.07em;color:#d5ff58;font-weight:950;margin:13px 0 12px}
#setup .rspScoreTrack{background:#284841;border-radius:999px;height:8px;overflow:hidden}
#setup .rspScoreTrack i{display:block;background:#d6ff63;height:100%;border-radius:999px}
#setup .rspScorePanel p{font-size:12px;line-height:1.55;margin:13px 0 7px;color:#e8f6ec}
#setup .rspScorePanel>small{color:#a6bfb2;font-size:11px}
#setup .rspWeights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:15px}
#setup .rspWeights>div{border:1px solid #38554b;border-radius:9px;padding:7px 3px;text-align:center;background:#0a2525}
#setup .rspWeights strong{display:block;color:#f1fff1;font-size:15px;line-height:1.35}
#setup .rspWeights span{display:block;color:#a6c3b9;font-size:9px;line-height:1.45}
#setup .rspScoreInfo{border:0;background:none;color:#d1f99a;font-size:11px;font-weight:850;padding:10px 0 0;cursor:pointer;text-align:left}
#setup .rspHeroActions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px;padding-top:2px}
#setup .rspButton{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:43px;padding:11px 15px;border:1px solid #557970;border-radius:12px;background:#0b3033;color:#ecfaee;font-size:12px;font-weight:900;cursor:pointer;line-height:1.25}
#setup .rspButton.rspPrimary{background:#d5ff55;border-color:#d5ff55;color:#0b2113}
#setup .rspPage button:hover{filter:brightness(1.08)}
#setup .rspPage button:focus-visible,#setup .rspPage summary:focus-visible{outline:2px solid #d6ff5d;outline-offset:4px}
#setup .rspAccordionList{margin-top:15px;display:grid;gap:11px}
#setup .rspAccordion{border:1px solid #2f6147;border-radius:17px;overflow:hidden;background:linear-gradient(125deg,#0b3022,#06241b)}
#setup .rspAccordion[open]{border-color:#6b9c57}
#setup .rspAccordion>summary{display:flex;gap:15px;align-items:center;min-height:82px;padding:17px 22px;cursor:pointer;list-style:none}
#setup .rspAccordion>summary::-webkit-details-marker{display:none}
#setup .rspAccNum{display:grid;place-items:center;background:#1c5833;width:39px;height:39px;border-radius:50%;color:#f5fff1;flex:0 0 39px;font-weight:900;font-size:15px}
#setup .rspAccTitles{display:grid;gap:5px;flex:1}
#setup .rspAccTitles strong{font-size:18px;letter-spacing:-.02em;color:#f7fff3;font-weight:850;line-height:1.28}
#setup .rspAccTitles small{font-size:12px;color:#b5d0bc;line-height:1.4}
#setup .rspAccChevron{color:#d4ff55;font-size:27px;line-height:1;transition:transform .16s ease}
#setup .rspAccordion[open] .rspAccChevron{transform:rotate(180deg)}
#setup .rspAccBody{padding:0 19px 20px}
#setup .rspComponentGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#setup .rspPart{border:1px solid #355f49;background:#09261e;border-radius:13px;padding:15px 12px;display:flex;flex-direction:column;min-height:128px;gap:9px;overflow-wrap:anywhere}
#setup .rspPartCaption{font-size:12px;color:#c4dbcb}
#setup .rspPart strong{font-size:13px;line-height:1.4;color:#f9fff2}
#setup .rspPart small{font-size:11px;line-height:1.5;color:#a7bdad;margin-top:auto}
#setup .rspReason{border:1px solid #427457;background:#0d3023;border-radius:13px;padding:16px;margin-top:12px}
#setup .rspReason strong{font-size:14px;color:#f7fff0}
#setup .rspReason p{color:#c5dfcc;font-size:12px;line-height:1.65;margin:8px 0 0}
#setup .rspNested{border-top:1px solid #35634b;margin-top:17px;padding:12px 4px 0}
#setup .rspNested>summary{cursor:pointer;color:#d6faa2;font-size:12px;font-weight:850;list-style:none;display:flex;justify-content:space-between;gap:8px}
#setup .rspNested>summary::-webkit-details-marker{display:none}
#setup .rspNested>summary span{font-size:18px}
#setup .rspNested[open]>summary span{transform:rotate(180deg)}
#setup .rspNestedBody{padding-top:13px}
#setup .rspNestedBody>.card,#setup .rspAccBody>.card{max-width:none;width:100%;margin:0;box-shadow:none;background:rgba(7,27,26,.5);border:1px solid #345244}
#setup .rspAccBody>.card{padding:16px}
#setup .rspNestedBody>.setupHero{display:block}
#setup .rspNestedBody>.setupHero .actions{display:flex;gap:9px;flex-wrap:wrap}
#setup .rspNestedBody .decisionCard{padding:14px}
#setup .rspNestedBody .setupGrid{display:block}
#setup .rspBottomGrid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:15px}
#setup .rspBottomCard{border:1px solid #376a4b;border-radius:17px;background:#0b2d21;padding:19px}
#setup .rspBottomCurrent{background:#092431;border-color:#376075}
#setup .rspBottomTitle{display:flex;align-items:center;gap:9px;margin-bottom:15px}
#setup .rspBottomTitle>span{display:grid;place-items:center;width:33px;height:33px;flex:0 0 33px;font-size:26px;color:#d0fa56}
#setup .rspBottomTitle h2{font-size:17px;font-weight:900;color:#f2fff3;margin:0;flex:1;line-height:1.3}
#setup .rspBottomTitle button{border:0;background:none;color:#bce9d7;font-size:27px;cursor:pointer;padding:0 6px}
#setup .rspGoals{display:grid;gap:13px}
#setup .rspGoalRow{display:grid;grid-template-columns:100px minmax(0,1fr) 50px;gap:12px;align-items:center}
#setup .rspGoalRow span{font-size:12px;font-weight:750}
#setup .rspGoalRow b{font-size:12px;font-weight:850;text-align:right}
#setup .rspGoalTrack{border-radius:999px;height:7px;background:#31534a;overflow:hidden}
#setup .rspGoalTrack i{display:block;height:100%;background:#d0fa57;border-radius:999px}
#setup .rspBottomCurrent dl{margin:0}
#setup .rspBottomCurrent dl>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid #294557}
#setup .rspBottomCurrent dl>div:last-child{border-bottom:0}
#setup .rspBottomCurrent dt{font-size:12px;color:#acbfca}
#setup .rspBottomCurrent dd{font-size:12px;font-weight:850;margin:0;color:#f5fbff;overflow-wrap:anywhere}
#setup .rspExtras{margin-top:13px;border:1px solid #355647;background:#0b211b;border-radius:15px;overflow:hidden}
#setup .rspExtras>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 20px;font-size:13px;font-weight:850;color:#f0fbed}
#setup .rspExtras>summary::-webkit-details-marker{display:none}
#setup .rspExtras>summary span{font-size:20px;color:#cffa66}
#setup .rspExtras[open]>summary span{transform:rotate(180deg)}
#setup .rspExtrasBody{display:grid;gap:12px;padding:0 15px 16px}
#setup .rspExtrasBody>.card{max-width:none;width:100%;margin:0}
#setup .rspMuted{color:#abc0b2;font-size:12px;line-height:1.6}
@media(max-width:1160px){
 #setup .rspHero{grid-template-columns:minmax(0,1fr) 150px 250px;gap:12px;padding:19px}
 #setup .rspScorePanel{padding:14px}
 #setup .rspHero h1{font-size:29px}
 #setup .rspComponentGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:920px){
 #setup .rspHero{grid-template-columns:minmax(0,1fr) 160px;grid-template-rows:auto auto auto}
 #setup .rspHeroLeft{grid-column:1}
 #setup .rspRacketVisual{grid-column:2}
 #setup .rspScorePanel{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px 15px}
 #setup .rspScoreTitle,#setup .rspScoreNum,#setup .rspScoreTrack{grid-column:1}
 #setup .rspScorePanel p,#setup .rspScorePanel>small,#setup .rspWeights,#setup .rspScoreInfo{grid-column:2}
 #setup .rspScorePanel p{margin:0}
 #setup .rspWeights{margin-top:0}
 #setup .rspHeroActions{grid-column:1/-1}
 #setup .rspBottomGrid{grid-template-columns:1fr}
}
@media(max-width:640px){
 #setup .rspPage{padding-bottom:75px}
 #setup .rspHero{padding:17px;border-radius:16px;grid-template-columns:1fr 95px;gap:7px}
 #setup .rspHero h1{font-size:clamp(23px,6.5vw,30px)}
 #setup .rspHeroLeft{grid-column:1}
 #setup .rspHeroDesc{font-size:12px}
 #setup .rspSpecs{font-size:11px}
 #setup .rspRacketVisual{grid-column:2}
 #setup .rspRacketVisual svg{max-width:95px;max-height:178px}
 #setup .rspPills{gap:5px}
 #setup .rspRank,#setup .rspBest{font-size:10px;padding:6px 9px}
 #setup .rspNav button{width:30px;height:30px}
 #setup .rspScorePanel{display:block;grid-column:1/-1;padding:13px}
 #setup .rspScoreNum{font-size:37px;margin:6px 0}
 #setup .rspScorePanel p{margin:10px 0 6px}
 #setup .rspWeights{margin-top:12px}
 #setup .rspHeroActions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 #setup .rspHeroActions .rspPrimary{grid-column:1/-1}
 #setup .rspButton{font-size:11px;padding:10px 6px}
 #setup .rspAccordion>summary{padding:14px 12px;gap:10px;min-height:70px}
 #setup .rspAccNum{width:30px;height:30px;flex-basis:30px;font-size:13px}
 #setup .rspAccTitles strong{font-size:14px}
 #setup .rspAccTitles small{font-size:11px}
 #setup .rspAccChevron{font-size:20px}
 #setup .rspAccBody{padding:0 12px 14px}
 #setup .rspComponentGrid{gap:8px}
 #setup .rspPart{padding:11px 9px;min-height:115px}
 #setup .rspPart strong{font-size:12px}
 #setup .rspPart small{font-size:10px}
 #setup .rspBottomCard{padding:15px}
 #setup .rspGoalRow{grid-template-columns:72px minmax(0,1fr) 40px;gap:8px}
 #setup .rspBottomCurrent dl>div{grid-template-columns:81px minmax(0,1fr)}
}


/* One unobtrusive source-of-recommendation disclosure instead of two open panels. */
#setup .rspContext{margin-top:26px;border:1px solid #376b4d;border-radius:17px;background:linear-gradient(116deg,#092b20,#06251b);overflow:hidden}
#setup .rspContext>summary{min-height:87px;display:flex;align-items:center;gap:17px;cursor:pointer;list-style:none;padding:18px 23px;color:#f5fff3}
#setup .rspContext>summary::-webkit-details-marker{display:none}
#setup .rspContext>summary:focus-visible{outline:2px solid #d5ff59;outline-offset:-4px}
#setup .rspContextIcon{flex:0 0 41px;display:grid;place-items:center;width:41px;height:41px;border:2px solid #d1ff59;border-radius:50%;color:#d1ff59;font-size:28px;line-height:1;font-weight:700}
#setup .rspContextHeading{display:grid;gap:5px;flex:1}
#setup .rspContextHeading>strong{font-size:18px;letter-spacing:-.018em;line-height:1.3;font-weight:850}
#setup .rspContextHeading>small{font-size:12px;line-height:1.45;color:#bad3c3}
#setup .rspContextChevron{flex:0 0 auto;display:grid;place-items:center;border:1px solid #426950;border-radius:50%;height:37px;width:37px;color:#d6ff57;font-size:27px;line-height:1;transition:transform .16s ease}
#setup .rspContext[open] .rspContextChevron{transform:rotate(180deg)}
#setup .rspContextBody{padding:0 17px 18px}
#setup .rspContextBody>.rspBottomGrid{margin-top:0}
#setup .rspContextBody .rspBottomCard{box-shadow:none}
@media(max-width:640px){
 #setup .rspContext{margin-top:17px;border-radius:14px}
 #setup .rspContext>summary{padding:14px 12px;min-height:72px;gap:10px}
 #setup .rspContextIcon{width:32px;height:32px;flex-basis:32px;font-size:22px}
 #setup .rspContextHeading>strong{font-size:14px}
 #setup .rspContextHeading>small{font-size:11px}
 #setup .rspContextChevron{width:30px;height:30px;font-size:22px}
 #setup .rspContextBody{padding:0 10px 11px}
 #setup .rspContextBody .rspBottomCard{padding:13px}
}

/* Beginner UX: provisional match and an actionable grip measurement guide. */
#setup .rspPreliminary{margin:8px 0 10px;padding:10px 11px;border:1px solid #ffb36e;border-radius:10px;background:rgba(255,172,85,.12);color:#ffe0b9;font-size:12px;line-height:1.48}
#setup .rspPreliminary strong{color:#fff0d9}
#setup .rspGripGuide{margin:14px 0;padding:16px 18px;border:1px solid #ffb36e;border-radius:13px;background:linear-gradient(130deg,rgba(255,173,89,.12),rgba(9,36,27,.3)),#0c281f;color:#f6f9ef}
#setup .rspGripGuide h3{font-size:16px;margin:0 0 9px}
#setup .rspGripGuide ol{padding-left:21px;margin:0 0 10px;display:grid;gap:7px;font-size:13px;line-height:1.52}
#setup .rspGripGuide p{font-size:12px;line-height:1.55;color:#d0dfd0;margin:8px 0 13px}
#setup .rspGripGuide .rspButton{white-space:normal;min-height:43px}
#gear .gearGroup{margin:20px 0 25px}
#gear .gearGroup>h2{font-size:20px;margin:0 0 5px;color:#e8ffe4}
#gear .gearGroup>p{font-size:13px;color:#bdcfca;margin:0 0 12px}
#gear .gearWishItem{border:1.5px solid #ffb36e;background:linear-gradient(145deg,rgba(255,173,89,.13),rgba(10,37,27,.14)),#0b241b}
#gear .gearWishItem .eyebrow{color:#ffd3a0}
@media(max-width:640px){#setup .rspGripGuide{padding:13px}#setup .rspPreliminary{font-size:11px}}

/* Explicit opt-in recomputation of a saved beginner wishlist setup. */
#gear .gearRefreshPreview{margin-top:17px;padding:15px;border:1px solid #ffaf64;background:#0d2922;border-radius:13px}
#gear .gearRefreshPreview h4{font-size:16px;line-height:1.3;margin:0 0 8px;color:#fff5e5}
#gear .gearRefreshPreview p{font-size:12px;line-height:1.5;color:#cddbd5;margin:0 0 12px}
#gear .gearRefreshTable{border:1px solid #335950;border-radius:10px;overflow:hidden}
#gear .gearRefreshHead,#gear .gearRefreshRow{display:grid;grid-template-columns:minmax(88px,.9fr) minmax(92px,1fr) minmax(92px,1fr);gap:8px;padding:9px 10px;align-items:start;font-size:12px;line-height:1.45}
#gear .gearRefreshHead{background:#203c33;color:#eaffcf}
#gear .gearRefreshRow{border-top:1px solid #35564c;color:#c8d9d4;overflow-wrap:anywhere}
#gear .gearRefreshRow strong{color:#f0f8eb}
#gear .gearRefreshRow b{color:#d5ff5a}
#gear .gearRefreshPreview .gearRefreshDisclaimer{margin:12px 0;color:#c8d5cd}
#gear .gearRefreshPreview .actions{display:flex;gap:9px;flex-wrap:wrap}
@media(max-width:640px){
  #gear .gearRefreshPreview{padding:12px}
  #gear .gearRefreshHead,#gear .gearRefreshRow{grid-template-columns:minmax(68px,.8fr) minmax(70px,1fr) minmax(70px,1fr);gap:6px;padding:9px 7px;font-size:11px}
  #gear .gearRefreshPreview .actions .btn{flex:1 1 100%;white-space:normal}
}

/* Wish-setup currency and audit trail. Real update time only: no invented timestamps. */
#gear .gearRefreshCurrent{border-color:#5b9a75;background:linear-gradient(130deg,#123c29,#0c2b22)}
#gear .gearRefreshCurrent h4{color:#deffb4}
#gear .gearWishUpdated{margin:11px 0 5px;color:#bbd5c7;font-size:11px;line-height:1.5}
#gear .gearWishHistory{margin-top:8px;padding:10px 11px;border:1px solid #315c4e;border-radius:9px;background:rgba(5,29,23,.42)}
#gear .gearWishHistory summary{cursor:pointer;font-size:12px;font-weight:800;color:#deffb3;list-style:revert}
#gear .gearWishHistory p{font-size:12px;line-height:1.5;color:#bfcec6;margin:9px 0 1px}
#gear .gearWishHistory ol{padding:0;margin:10px 0 0;list-style:none;display:grid;gap:9px}
#gear .gearWishHistoryItem{display:grid;gap:3px;padding:10px;border:1px solid #32564a;background:#0b281f;border-radius:8px;color:#cbdbd1;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
#gear .gearWishHistoryItem strong{color:#e5ffd5;margin-bottom:3px}
@media(max-width:640px){#gear .gearWishHistory{padding:9px}#gear .gearWishHistoryItem{padding:9px}}

/* Focused beginner questions and direct feedback for measured hand sizes. */
#goals .beginnerExtraGoals{grid-column:1/-1;border:1px solid #356459;border-radius:12px;background:#102a26;padding:13px 14px}
#goals .beginnerExtraGoals summary{cursor:pointer;font-size:13px;font-weight:850;color:#d7ffaa;padding:7px 0}
#goals .beginnerExtraGoals .formGrid{margin-top:14px}
#match .beginnerAccessoryPicker{margin-top:11px;border:1px solid #356459;border-radius:11px;padding:11px}
#match .beginnerAccessoryPicker summary{cursor:pointer;color:#d7ffaa;font-size:13px;font-weight:850;min-height:33px}
#match .beginnerAccessoryPicker .checkGrid{margin-top:12px}
#match .gripMeasureHint{display:block;margin-top:9px;color:#c9e0d5;font-size:11px;line-height:1.5}
#match .gripMeasureWarning{color:#ffd0a1;background:rgba(255,169,88,.08);border-left:3px solid #ffb469;padding:9px;border-radius:5px}
@media(max-width:900px){#goals .beginnerExtraGoals{padding:10px}#match .beginnerAccessoryPicker{padding:10px}}
