.cg-practice .shell.shell--embed .rp.psc-rail{display:flex;flex-direction:column;width:100%;min-height:calc(100dvh - 56px);height:calc(100dvh - 56px);max-height:calc(100dvh - 56px);overflow:hidden;background:var(--bg2)}.cg-practice .psc-rail .psc-rail-stack{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:0;overflow:hidden}.cg-practice .psc-rail .psc-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;box-shadow:var(--shadow);flex-shrink:0}.cg-practice .psc-rail .psc-panel--calendar{display:flex;flex-direction:column;flex-shrink:0;padding-bottom:8px}.cg-practice .psc-rail .psc-panel--shimmer{min-height:72px;animation:psc-shimmer 1.2s linear infinite;background:linear-gradient(90deg,hsla(0,0%,50%,.06),hsla(0,0%,50%,.14) 50%,hsla(0,0%,50%,.06));background-size:200% 100%}.cg-practice .psc-rail .psc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.cg-practice .psc-rail .psc-panel-head--tight{margin-bottom:6px}.cg-practice .psc-rail .psc-panel-title-row{display:flex;align-items:center;gap:4px}.cg-practice .psc-rail .psc-panel-title{font-size:13px;font-weight:700;color:var(--text)}.cg-practice .psc-rail .psc-panel-title--solo{margin-bottom:8px}.cg-practice .psc-rail .psc-info-btn{display:inline-flex;padding:2px;border:none;background:transparent;color:var(--text3);cursor:help;border-radius:4px}.cg-practice .psc-rail .psc-date-badge{font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--green);background:var(--green4);border:1px solid var(--green3);border-radius:6px;padding:4px 8px;white-space:nowrap}.cg-practice .psc-rail .psc-nav-row--head{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.cg-practice .psc-rail .psc-month-label{min-width:2.25rem;font-size:11px;font-weight:700;letter-spacing:.05em;text-align:center;color:var(--text);user-select:none;line-height:1}.cg-practice .psc-rail .psc-nav-btn{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;border:1px solid var(--border);background:var(--bg3,var(--card));color:var(--text2);cursor:pointer;transition:.15s;flex-shrink:0}.cg-practice .psc-rail .psc-nav-btn:hover:not(:disabled){border-color:var(--green);color:var(--green)}.cg-practice .psc-rail .psc-nav-btn:disabled{opacity:.35;cursor:not-allowed}.cg-practice .psc-rail .psc-dow-row{margin-bottom:2px;text-align:center;font-size:9px;font-weight:600;color:var(--text3)}.cg-practice .psc-rail .psc-cal-grid,.cg-practice .psc-rail .psc-dow-row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;flex-shrink:0}.cg-practice .psc-rail .psc-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:22px;padding:1px 0;border-radius:6px;font-size:10px;font-weight:600;text-decoration:none;color:inherit}.cg-practice .psc-rail a.psc-cell{cursor:pointer}.cg-practice .psc-rail .psc-cell--empty,.cg-practice .psc-rail .psc-cell--empty-slot{min-height:22px;visibility:hidden}.cg-practice .psc-rail .psc-cell--future{color:var(--text3)}.cg-practice .psc-rail .psc-cell--past{color:var(--text)}.cg-practice .psc-rail .psc-cell--today{position:relative;z-index:0;background:transparent;color:var(--accent-on-green);font-weight:700}.cg-practice .psc-rail .psc-cell--today:before{content:"";position:absolute;left:50%;top:50%;z-index:-1;width:22px;height:22px;border-radius:50%;background:var(--green);transform:translate(-50%,-50%)}.cg-practice .psc-rail .psc-cell--activity:not(.psc-cell--today){background:rgba(34,197,94,.08)}.cg-practice .psc-rail .psc-cal-dot{width:4px;height:4px;border-radius:50%;margin-top:1px}.cg-practice .psc-rail .psc-cal-dot--1{background:rgba(34,197,94,.35)}.cg-practice .psc-rail .psc-cal-dot--2{background:rgba(34,197,94,.6)}.cg-practice .psc-rail .psc-cal-dot--3{background:var(--green)}.cg-practice .psc-rail .psc-legend{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-top:4px;flex-shrink:0}.cg-practice .psc-rail .psc-legend-label{font-size:9px;color:var(--text3)}.cg-practice .psc-rail .psc-legend-cell{width:10px;height:10px;border-radius:2px}.cg-practice .psc-rail .psc-daily-goal{margin-top:6px;padding-top:6px;border-top:1px solid var(--border);flex-shrink:0;padding-bottom:0}.cg-practice .psc-rail .psc-daily-goal-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:2px}.cg-practice .psc-rail .psc-daily-goal-title{font-size:12px;font-weight:700;color:var(--text)}.cg-practice .psc-rail .psc-view-link{font-size:11px;font-weight:600;color:var(--green);background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.cg-practice .psc-rail .psc-view-link:hover{text-decoration:underline}.cg-practice .psc-rail .psc-daily-goal-text{font-size:11px;color:var(--text2);margin-bottom:4px;line-height:1.3}.cg-practice .psc-rail .psc-daily-goal-progress{display:flex;align-items:center;gap:8px}.cg-practice .psc-rail .psc-daily-goal-count{font-size:10px;font-weight:700;color:var(--green);font-variant-numeric:tabular-nums;white-space:nowrap}.cg-practice .psc-rail .psc-panel--heatmap{padding:8px 10px}.cg-practice .psc-rail .psc-heat-grid{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));grid-auto-rows:auto;gap:3px;width:100%}.cg-practice .psc-rail .psc-heat-grid>*{min-width:0;width:100%}.cg-practice .psc-rail .psc-heat-cell{width:100%;aspect-ratio:1;height:auto;margin:0;border-radius:2px;display:block;cursor:default;box-sizing:border-box}.cg-practice .psc-rail .psc-heat-cell--empty{visibility:hidden}.cg-practice .psc-rail .psc-heat-cell--0{background:var(--track-bg)}.cg-practice .psc-rail .psc-heat-cell--1{background:rgba(34,197,94,.28)}.cg-practice .psc-rail .psc-heat-cell--2{background:rgba(34,197,94,.52)}.cg-practice .psc-rail .psc-heat-cell--3{background:var(--green)}.cg-practice .psc-rail .psc-heat-cell--future{background:color-mix(in srgb,var(--border) 80%,transparent)}.cg-practice .psc-rail .psc-heat-cell--today{outline:1.5px solid var(--green);outline-offset:1px}.cg-practice .psc-rail .psc-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex-shrink:0}.cg-practice .psc-rail .psc-stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:8px 4px;text-align:center;box-shadow:var(--shadow)}.cg-practice .psc-rail .psc-stat-num{font-size:16px;font-weight:800;color:var(--green);line-height:1.1;font-variant-numeric:tabular-nums}.cg-practice .psc-rail .psc-stat-label{font-size:9px;color:var(--text3);margin-top:2px;line-height:1.2}.cg-practice .psc-rail .psc-panel--coins{padding:10px 12px}.cg-practice .psc-rail .psc-coins-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.cg-practice .psc-rail .psc-coins-left{display:flex;align-items:center;gap:8px;min-width:0}.cg-practice .psc-rail .psc-coin-img{width:24px;height:24px;object-fit:contain;flex-shrink:0}.cg-practice .psc-rail .psc-coins-balance{font-size:16px;font-weight:800;color:var(--text);line-height:1.1}.cg-practice .psc-rail .psc-coins-sub{font-size:10px;color:var(--text3)}.cg-practice .psc-rail .psc-panel--contest{padding:14px 12px 12px;margin-bottom:0}.cg-practice .psc-rail .psc-panel-head--contest{margin-bottom:12px}.cg-practice .psc-rail .psc-contest-status-badge{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;padding:3px 8px;border-radius:6px;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}.cg-practice .psc-rail .psc-contest-status-badge--live{color:var(--red);background:rgba(239,68,68,.1);border:1px solid color-mix(in srgb,var(--red) 28%,transparent)}.cg-practice .psc-rail .psc-contest-status-badge--upcoming{color:var(--green);background:var(--green4);border:1px solid color-mix(in srgb,var(--green) 28%,transparent)}.cg-practice .psc-rail .psc-contest-status-badge--ended{color:var(--text3);background:var(--card2);border:1px solid var(--border)}.cg-practice .psc-rail .psc-live-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.cg-practice .psc-rail .psc-contest-title-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:14px;padding-top:2px}.cg-practice .psc-rail .psc-contest-title{font-size:13px;font-weight:700;color:var(--text);line-height:1.35}.cg-practice .psc-rail .psc-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:14px}.cg-practice .psc-rail .psc-contest-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:8px 14px;border-radius:8px;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;transition:.15s;box-sizing:border-box}.cg-practice .psc-rail .psc-contest-cta--outline{border:1px solid color-mix(in srgb,var(--green) 40%,transparent);color:var(--green);background:transparent;text-decoration:none}.cg-practice .psc-rail .psc-contest-cta--outline:hover{background:var(--green4);border-color:var(--green)}.cg-practice .psc-rail .psc-contest-cta--open{border:1px solid color-mix(in srgb,var(--green) 40%,transparent);background:var(--green4);color:var(--green)}.cg-practice .psc-rail .psc-contest-cta--open:hover{background:color-mix(in srgb,var(--green) 18%,var(--green4));border-color:var(--green)}.cg-practice .psc-rail .psc-contest-cta--live{border:1px solid var(--green);background:var(--green);color:var(--accent-on-green);box-shadow:0 2px 10px color-mix(in srgb,var(--green) 30%,transparent)}.cg-practice .psc-rail .psc-contest-cta--live:hover{background:var(--green2);border-color:var(--green2)}.cg-practice .psc-rail .psc-contest-cta--waiting{border:1px solid color-mix(in srgb,var(--green) 22%,transparent);background:color-mix(in srgb,var(--green4) 70%,var(--card));color:color-mix(in srgb,var(--green) 75%,var(--text2))}.cg-practice .psc-rail .psc-contest-cta--disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.cg-practice .psc-rail .psc-countdown-box{background:var(--green4);border:1px solid var(--green3);border-radius:8px;padding:6px 4px;text-align:center}.cg-practice .psc-rail .psc-countdown-num{display:block;font-size:14px;font-weight:800;color:var(--green);font-variant-numeric:tabular-nums;line-height:1.1}.cg-practice .psc-rail .psc-countdown-lbl{display:block;font-size:8px;font-weight:600;color:var(--text3);margin-top:2px}.cg-practice .psc-rail .psc-outline-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:8px;border:1px solid var(--green);color:var(--green);font-size:11px;font-weight:700;text-decoration:none;background:transparent;white-space:nowrap;transition:.15s}.cg-practice .psc-rail .psc-outline-btn:hover{background:var(--green4)}.cg-practice .psc-rail .psc-outline-btn--block{width:100%;padding:8px 12px}.cg-practice .psc-rail .psc-outline-btn--disabled{opacity:.45;pointer-events:none}@keyframes psc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cg-practice .psc-rail .psc-progress-track{flex:1;height:5px;border-radius:99px;background:var(--track-bg);overflow:hidden}.cg-practice .psc-rail .psc-progress-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--green2),var(--green))}@media (max-width:1100px){.cg-practice .shell.shell--embed .rp.psc-rail{height:auto;max-height:none;overflow:visible}.cg-practice .psc-rail .psc-rail-stack{overflow:visible}}