Upload folder using huggingface_hub
Browse files
client/src/pages/WeeklyPractice.tsx
CHANGED
|
@@ -1425,20 +1425,32 @@ const WeeklyPractice: React.FC = () => {
|
|
| 1425 |
|
| 1426 |
{/* Week Selector */}
|
| 1427 |
<div className="mb-6">
|
| 1428 |
-
<div className="flex space-x-
|
| 1429 |
-
{weeks.map((week) =>
|
| 1430 |
-
|
| 1431 |
-
|
| 1432 |
-
|
| 1433 |
-
|
| 1434 |
-
|
| 1435 |
-
|
| 1436 |
-
|
| 1437 |
-
|
| 1438 |
-
|
| 1439 |
-
|
| 1440 |
-
|
| 1441 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1442 |
</div>
|
| 1443 |
</div>
|
| 1444 |
|
|
|
|
| 1425 |
|
| 1426 |
{/* Week Selector */}
|
| 1427 |
<div className="mb-6">
|
| 1428 |
+
<div className="flex space-x-3 overflow-x-auto pb-2">
|
| 1429 |
+
{weeks.map((week) => {
|
| 1430 |
+
const isActive = selectedWeek === week;
|
| 1431 |
+
return (
|
| 1432 |
+
<button
|
| 1433 |
+
key={week}
|
| 1434 |
+
onClick={() => handleWeekChange(week)}
|
| 1435 |
+
className={`relative inline-flex items-center justify-center rounded-2xl px-4 py-1.5 whitespace-nowrap transition-all duration-300 ease-out ring-1 ring-inset ${isActive ? 'ring-white/50 backdrop-brightness-110 backdrop-saturate-150' : 'ring-white/30'} backdrop-blur-md isolate shadow-[inset_0_0.5px_0_rgba(255,255,255,0.5),inset_0_-1px_1.5px_rgba(0,0,0,0.12)]`}
|
| 1436 |
+
style={{ background: 'rgba(255,255,255,0.10)' }}
|
| 1437 |
+
>
|
| 1438 |
+
{/* Rim washes */}
|
| 1439 |
+
<div className="pointer-events-none absolute inset-0 rounded-2xl opacity-60 [background:linear-gradient(to_bottom,rgba(255,255,255,0.35),rgba(255,255,255,0)_28%),linear-gradient(to_right,rgba(255,255,255,0.35),rgba(255,255,255,0)_28%)]" />
|
| 1440 |
+
{/* Soft glossy wash */}
|
| 1441 |
+
<div className="pointer-events-none absolute inset-0 rounded-2xl bg-gradient-to-tr from-white/30 via-white/10 to-transparent opacity-50" />
|
| 1442 |
+
{/* Tiny hotspot near TL */}
|
| 1443 |
+
<div className="pointer-events-none absolute rounded-full" style={{ width: '28px', height: '28px', left: '8px', top: '6px', background: 'radial-gradient(16px_16px_at_10px_10px,rgba(255,255,255,0.5),rgba(255,255,255,0)_60%)', opacity: 0.45 }} />
|
| 1444 |
+
{/* Center darken for depth on unselected only */}
|
| 1445 |
+
{!isActive && (
|
| 1446 |
+
<div className="pointer-events-none absolute inset-0 rounded-2xl" style={{ background: 'radial-gradient(120%_120%_at_50%_55%,rgba(0,0,0,0.04),rgba(0,0,0,0)_60%)', opacity: 0.9 }} />
|
| 1447 |
+
)}
|
| 1448 |
+
{/* Pink tint overlay to match Weekly Practice identity */}
|
| 1449 |
+
<div className={`pointer-events-none absolute inset-0 rounded-2xl ${isActive ? 'bg-pink-600/70 mix-blend-normal opacity-100' : 'bg-pink-500/30 mix-blend-overlay opacity-35'}`} />
|
| 1450 |
+
<span className={`relative z-10 text-sm font-medium ${isActive ? 'text-white' : 'text-black'}`}>Week {week}</span>
|
| 1451 |
+
</button>
|
| 1452 |
+
);
|
| 1453 |
+
})}
|
| 1454 |
</div>
|
| 1455 |
</div>
|
| 1456 |
|