/* KEYS home — title emblems, court identity, quiet supporting sections. */
.keys-title-emblem{display:block;width:72px;height:80px;filter:drop-shadow(0 3px 2px #1429511c);flex:none}.player-title-badge{display:flex;align-items:center;gap:10px;margin:12px 0;min-width:0}.player-title-badge strong{font-size:14px;line-height:1.55;color:#203a8c;overflow-wrap:anywhere}.player-title-badge .keys-title-emblem{width:62px;height:70px}
.screen-home .player-card{padding:22px 18px 52px;min-height:310px;border:1px solid #dce3ef;border-radius:20px;box-shadow:0 6px 20px #203a8c08;margin:20px 0}.screen-home .player-card:before{background:linear-gradient(100deg,#fffffff7 0%,#fffffff0 38%,#ffffff18 100%)}.screen-home .player-card-copy{width:57%}.screen-home .player-card-copy h2{font-size:25px;line-height:1.35;margin:8px 0}.screen-home .player-card-copy>small{color:#203a8c;font-size:10px;letter-spacing:.15em}.screen-home .player-stage-label{font-size:10px;color:#536489;border-left:0;padding-left:0}.screen-home .player-card-avatar{right:-18px;bottom:43px;width:200px}.screen-home .player-trophy-shelf{width:57%;gap:5px;margin-top:12px}.screen-home .player-trophy-shelf>span{background:#ffffffd9;border-color:#e1e6f1;border-radius:9px}.screen-home .player-collection-link{font-size:12px;min-height:44px;background:#ffffffed!important;padding-right:18px}.screen-home .loop-home{border:1px solid #e2e6f2;border-left:4px solid #203a8c;border-radius:18px;background:#f3f5fc;box-shadow:none;padding:18px;margin:20px 0}.screen-home .loop-home h2{font-size:19px}.screen-home .loop-home button{border-radius:12px;min-height:48px;text-align:left}.screen-home .next-goal{background:#fff!important;border:1px solid #dce3f0!important;border-radius:18px;padding:20px;margin:20px 0;box-shadow:0 4px 16px #203a8c06!important}.screen-home .next-goal:before,.screen-home .next-goal:after{display:none}.screen-home .next-goal-label{color:#203a8c;font-style:normal;font-size:11px;letter-spacing:.14em}.goal-reward{display:flex;align-items:center;gap:16px;margin:18px 0}.goal-reward>div:last-child{flex:1;min-width:0}.goal-emblem{position:relative;flex:none}.goal-emblem .keys-title-emblem{width:76px;height:86px}.goal-emblem>span{position:absolute;bottom:-1px;left:28px;background:#eff1fa;border:2px solid white;border-radius:7px;font-size:15px;padding:2px}.screen-home .next-goal .goal-reward h2{font-size:15px;margin:8px 0 0;color:#203a8c;line-height:1.6}.screen-home .next-goal-title strong{font-size:18px;color:#203a8c}.screen-home .next-goal-progress progress::-webkit-progress-value{background:#203a8c}.screen-home .next-goal-progress progress::-moz-progress-bar{background:#203a8c}.screen-home .next-goal-progress span{color:#203a8c}.screen-home .next-goal>small:not(.next-goal-label){color:#637391}.screen-home .next-goal button{box-shadow:none;min-height:44px;border-radius:10px}.screen-home .home-latest{padding:20px 14px;border-radius:20px;background:#f2f5fc!important;border:0;box-shadow:none;margin-top:24px}.screen-home .home-latest-row{border:1px solid #e4e9f4;border-radius:13px;box-shadow:none;margin:10px 0;padding:15px 12px;background:#fff}.screen-home .home-latest .section-heading h2,.screen-home .weekly-view h2{font-size:18px;color:#203a8c}.screen-home .weekly-view{background:#f3f5fc!important;border:0!important;box-shadow:none!important;border-radius:18px;padding:20px 16px;margin-top:24px}.screen-home .week-days .recorded>span{background:#ff6b6b!important;color:white!important}.screen-home .week-days>div:not(.recorded)>span{background:transparent!important;border:1px solid #ced6e9;color:#7787a6}.screen-home .weekly-view .viz-note{font-size:11px;color:#6e7b96}.screen-home .home-start{margin-bottom:20px}
@media(max-width:360px){.screen-home .player-title-badge{gap:6px}.screen-home .player-title-badge .keys-title-emblem{width:52px;height:60px}.screen-home .player-title-badge strong{font-size:12px}.screen-home .player-card-avatar{right:-30px;width:185px}}
.screen-home .next-goal{padding:22px 20px!important;background:linear-gradient(140deg,#fff 70%,#f4f6fd)!important}.screen-home .next-goal .goal-reward{gap:18px;margin:20px 0 12px}.screen-home .next-goal .goal-emblem .keys-title-emblem{width:86px;height:96px}.screen-home .next-goal .goal-emblem>span{left:31px}.screen-home .next-goal .next-goal-title{margin:0;font-size:12px;color:#647596}.screen-home .next-goal .next-goal-title strong{font-size:19px;line-height:1.5;margin-top:5px}.screen-home .next-goal .goal-remaining{color:#203a8c;font-size:17px;font-weight:700;margin:12px 0 0;line-height:1.2}.screen-home .next-goal .goal-remaining b{font-size:36px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.screen-home .next-goal .goal-remaining strong{font-size:18px;margin-left:4px}.screen-home .next-goal .goal-task{color:#203a8c;font-size:14px;margin-top:18px}.screen-home .next-goal .next-goal-progress{margin:12px 0 20px}.screen-home .next-goal .next-goal-progress progress{height:10px}.screen-home .next-goal .next-goal-progress progress::-webkit-progress-bar{background:#e6eaf4}.screen-home .next-goal .goal-unlocks{border-top:1px solid #e4e8f2;padding-top:14px;display:flex;flex-direction:column;gap:5px}.screen-home .next-goal .goal-unlocks small{font-size:11px;color:#657697}.screen-home .next-goal .goal-unlocks strong{font-size:13px;color:#203a8c;line-height:1.6}.screen-home .next-goal .goal-days-note{font-size:11px;line-height:1.7;color:#6a7893;margin:10px 0}.screen-home .next-goal .goal-preview-note{font-size:10px;color:#63718b;background:#eff1fa;border-radius:6px;padding:8px;margin:12px 0}.screen-home .next-goal .goal-demo-status{font-size:11px;color:#63718b;margin-top:12px}
/* Coral wayfinding accents, without competing with the record CTA. */
.screen-home .loop-home{border-left-color:#ff6b6b}.screen-home .loop-home .loop-kicker:before{content:'';display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#ff6b6b;vertical-align:middle}.screen-home .loop-home button{border-color:#f5cccc!important;background:#fff!important}.screen-home .loop-home button>span{color:#f05b68;font-size:22px}
.screen-home .next-goal .next-goal-label:before{content:'';display:block;width:5px;height:16px;background:#ff6b6b;border-radius:3px}.screen-home .next-goal .next-goal-label span{border-left-color:#f1ccd2;color:#687797}.screen-home .next-goal .next-goal-progress progress{accent-color:#ff6b6b}.screen-home .next-goal .next-goal-progress progress::-webkit-progress-value{background:#ff6b6b}.screen-home .next-goal .next-goal-progress progress::-moz-progress-bar{background:#ff6b6b}.screen-home .next-goal .goal-unlocks{border-top-color:#f4dce0}.screen-home .next-goal .goal-unlocks>small:before{content:'＋';display:inline-block;color:#d94359;font-weight:800;margin-right:5px}
.screen-home .home-latest .section-heading h2,.screen-home .weekly-view .viz-heading h2{display:flex;align-items:center;gap:9px}.screen-home .home-latest .section-heading h2:before,.screen-home .weekly-view .viz-heading h2:before{content:'';width:4px;height:18px;border-radius:3px;background:#ff6b6b;flex:none}.screen-home .home-record-icon{background:#fff0f2!important;color:#c74158!important;border-radius:10px}.screen-home .home-record-icon svg{color:inherit}.screen-home .weekly-view{background:#fff7f8!important}.screen-home .weekly-view .week-days .today>small{color:#bd364c;text-decoration-color:#ff6b6b}.screen-home .weekly-view .week-days .recorded>span{border-color:#ff6b6b!important}
/* One compact, tappable pre-practice entry; no nested button/card. */
.screen-home .loop-home.loop-home-entry{display:flex;align-items:center;gap:14px;width:100%;min-height:112px;padding:18px;margin:20px 0;border:1px solid #e0e5f1;border-radius:18px;background:#fff;box-shadow:0 3px 12px #203a8c06;color:#203a8c;text-align:left;cursor:pointer;box-sizing:border-box}.loop-home-entry .loop-entry-icon{display:flex;align-items:center;justify-content:center;width:48px;height:56px;flex:none;border-radius:14px;background:#fff0f2;color:#df5366}.loop-home-entry .loop-entry-icon svg{width:25px;height:25px}.loop-home-entry .loop-entry-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}.loop-home-entry .loop-entry-copy>small{font-size:11px;color:#687797;font-weight:600;line-height:1.4}.loop-home-entry .loop-entry-copy>strong{font-size:19px;font-weight:800;line-height:1.45;color:#203a8c}.loop-home-entry .loop-entry-meta{font-size:12px;line-height:1.5;color:#647496}.loop-home-entry .loop-entry-arrow{font-size:27px;line-height:1;color:#ed6373;flex:none}.screen-home .loop-home-entry:hover{border-color:#f2bec6;background:#fffafb}.screen-home .loop-home-entry:active{background:#fff3f5}.screen-home .loop-home-entry:focus-visible{outline:3px solid #203a8c;outline-offset:3px}
/* Solid indigo pre-practice entry. */
.screen-home .loop-home.loop-home-entry{background:#203a8c;border-color:#203a8c;color:#fff;box-shadow:0 4px 14px #203a8c14}.screen-home .loop-home-entry .loop-entry-copy>strong{color:#fff}.screen-home .loop-home-entry .loop-entry-copy>small,.screen-home .loop-home-entry .loop-entry-meta{color:#dce3ff}.screen-home .loop-home-entry .loop-entry-icon{background:#ffffff14;color:#ff919b}.screen-home .loop-home-entry .loop-entry-arrow{color:#ff919b}.screen-home .loop-home-entry:hover{background:#263f94;border-color:#263f94}.screen-home .loop-home-entry:active{background:#192f76}
