diff --git a/assets/pasted-20260217-184853-b9782cb3.png b/assets/pasted-20260217-184853-b9782cb3.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/assets/pasted-20260217-184853-b9782cb3.png differ diff --git a/assets/pasted-20260217-185432-d5369dd4.png b/assets/pasted-20260217-185432-d5369dd4.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/assets/pasted-20260217-185432-d5369dd4.png differ diff --git a/assets/pasted-20260217-185935-a2ab29fc.png b/assets/pasted-20260217-185935-a2ab29fc.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/assets/pasted-20260217-185935-a2ab29fc.png differ diff --git a/assets/pasted-20260217-190126-64d72bd8.png b/assets/pasted-20260217-190126-64d72bd8.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/assets/pasted-20260217-190126-64d72bd8.png differ diff --git a/assets/pasted-20260217-190514-e29c5229.png b/assets/pasted-20260217-190514-e29c5229.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/assets/pasted-20260217-190514-e29c5229.png differ diff --git a/config/__pycache__/settings.cpython-311.pyc b/config/__pycache__/settings.cpython-311.pyc index c132140..6c54711 100644 Binary files a/config/__pycache__/settings.cpython-311.pyc and b/config/__pycache__/settings.cpython-311.pyc differ diff --git a/config/settings.py b/config/settings.py index ae00898..f5d0b9b 100644 --- a/config/settings.py +++ b/config/settings.py @@ -185,3 +185,6 @@ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' # Media files (User uploads) MEDIA_URL = 'media/' MEDIA_ROOT = BASE_DIR / 'media' + +LOGOUT_REDIRECT_URL = 'onboarding' +LOGIN_REDIRECT_URL = 'home' diff --git a/core/__pycache__/views.cpython-311.pyc b/core/__pycache__/views.cpython-311.pyc index ce2c177..1ac6b93 100644 Binary files a/core/__pycache__/views.cpython-311.pyc and b/core/__pycache__/views.cpython-311.pyc differ diff --git a/core/static/core/images/logo.png b/core/static/core/images/logo.png index bde165a..456e021 100644 Binary files a/core/static/core/images/logo.png and b/core/static/core/images/logo.png differ diff --git a/core/templates/base.html b/core/templates/base.html index 5e5d643..a985d7d 100644 --- a/core/templates/base.html +++ b/core/templates/base.html @@ -4,7 +4,7 @@ - {% block title %}CommonGround{% endblock %} + {% block title %}Roster{% endblock %} {% if project_description %} {% endif %} @@ -21,24 +21,23 @@ diff --git a/core/templates/registration/login.html b/core/templates/registration/login.html index 440a493..9a27436 100644 --- a/core/templates/registration/login.html +++ b/core/templates/registration/login.html @@ -1,6 +1,6 @@ {% extends "base.html" %} -{% block title %}Log In - CommonGround{% endblock %} +{% block title %}Log In - Roster{% endblock %} {% block content %}
diff --git a/core/templates/registration/signup.html b/core/templates/registration/signup.html index a36d84c..c2b215c 100644 --- a/core/templates/registration/signup.html +++ b/core/templates/registration/signup.html @@ -1,6 +1,6 @@ {% extends "base.html" %} -{% block title %}Player Setup - CommonGround{% endblock %} +{% block title %}Player Setup - Roster{% endblock %} {% block content %}
diff --git a/core/views.py b/core/views.py index 87dcbec..5c7a769 100644 --- a/core/views.py +++ b/core/views.py @@ -53,7 +53,7 @@ def get_dashboard_context(request): "following_ids": following_ids, "post_types": Post.POST_TYPE_CHOICES, "current_time": timezone.now(), - "project_name": "CommonGround", + "project_name": "Roster", } def home(request): diff --git a/groups/templates/groups/group_detail.html b/groups/templates/groups/group_detail.html index a28c491..e4275e9 100644 --- a/groups/templates/groups/group_detail.html +++ b/groups/templates/groups/group_detail.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% load static %} -{% block title %}{{ group.name }} | CommonGround{% endblock %} +{% block title %}{{ group.name }} | Roster{% endblock %} {% block content %}
diff --git a/groups/templates/groups/group_form.html b/groups/templates/groups/group_form.html index fa672f6..04aaa53 100644 --- a/groups/templates/groups/group_form.html +++ b/groups/templates/groups/group_form.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% load static %} -{% block title %}{% if object %}Edit{% else %}Create{% endif %} Squad | CommonGround{% endblock %} +{% block title %}{% if object %}Edit{% else %}Create{% endif %} Squad | Roster{% endblock %} {% block content %}
diff --git a/groups/templates/groups/hub.html b/groups/templates/groups/hub.html index 0454b12..7807eae 100644 --- a/groups/templates/groups/hub.html +++ b/groups/templates/groups/hub.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% load static %} -{% block title %}Squads Hub | CommonGround{% endblock %} +{% block title %}Squads Hub | Roster{% endblock %} {% block content %}
diff --git a/static/css/custom.css b/static/css/custom.css index 981f1e1..d534da1 100644 --- a/static/css/custom.css +++ b/static/css/custom.css @@ -1,202 +1,172 @@ -@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&display=swap'); +@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap'); :root { - --cg-sand-primary: #F4F1EA; - --cg-sand-secondary: #FAF8F4; - --cg-white: #FFFFFF; - --cg-slate: #2C3E50; - --cg-muted: #6B7280; - --cg-blue: #5D9CEC; - --cg-sage: #8FAF9F; - --cg-divider: rgba(44, 62, 80, 0.08); - --cg-success: #789688; /* Muted sage-green for success */ - --cg-radius-sm: 8px; - --cg-radius-md: 12px; - --cg-radius-lg: 16px; - --cg-transition: all 250ms ease; - --cg-shadow-soft: 0 4px 12px rgba(44, 62, 80, 0.04); + --r-navy-deep: #050A18; + --r-navy-soft: #0C162D; + --r-cyan: #00B4DB; + --r-cyan-glow: rgba(0, 180, 219, 0.4); + --r-neon-green: #39FF14; + --r-neon-glow: rgba(57, 255, 20, 0.4); + --r-silver: #E0E0E0; + --r-silver-dim: #A0A0A0; + --r-glass-bg: rgba(255, 255, 255, 0.03); + --r-glass-border: rgba(224, 224, 224, 0.2); + --r-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } body { - font-family: 'Inter', system-ui, -apple-system, sans-serif; - background: linear-gradient(180deg, #F6F3EC 0%, #F2EFE7 100%); - color: var(--cg-slate); - line-height: 1.6; - -webkit-font-smoothing: antialiased; - min-height: 100vh; + background: radial-gradient(circle at top center, #101B38 0%, var(--r-navy-deep) 100%); + background-attachment: fixed; + color: var(--r-silver); + font-family: 'Inter', sans-serif; + min-height: 100vh; + margin: 0; + padding: 0; + overflow-x: hidden; } -h1, .welcome-header { - font-family: 'Playfair Display', serif; - font-size: 36px; - font-weight: 600; - letter-spacing: -0.01em; - color: var(--cg-slate); +h1, h2, h3, h4, .brand-font { + font-family: 'Playfair Display', serif; + letter-spacing: -0.01em; } -h2, h3, h4, h5, h6, .section-header, .brand-font { - font-family: 'Playfair Display', serif; - font-weight: 600; - letter-spacing: -0.01em; - color: var(--cg-slate); +/* Metallic Text Effect */ +.text-metallic { + background: linear-gradient(135deg, #FFFFFF 0%, var(--r-silver) 50%, var(--r-silver-dim) 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; } -.section-header { - font-size: 20px; -} - -.text-muted { - color: #6B7280 !important; -} - -/* Layout */ +/* Glassmorphism Navbar */ .navbar { - background-color: var(--cg-white); - border-bottom: 1px solid rgba(0,0,0,0.05); - padding: 0.75rem 0; - transition: var(--cg-transition); + background: rgba(5, 10, 24, 0.85) !important; + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + border-bottom: 1px solid var(--r-glass-border); + padding: 1rem 0; } -.navbar-brand img { - height: 24px; +.nav-link { + color: var(--r-silver-dim) !important; + font-weight: 500; + text-transform: uppercase; + font-size: 0.85rem; + letter-spacing: 1px; + transition: var(--r-transition); } -main { - padding-bottom: 100px; - padding-top: 24px; +.nav-link:hover, .nav-link.active { + color: var(--r-cyan) !important; + text-shadow: 0 0 15px var(--r-cyan-glow); } -section { - padding: 40px 0; +/* Custom Buttons */ +.btn-neon { + background: linear-gradient(135deg, var(--r-cyan) 0%, #0083B0 100%); + color: white !important; + border: none; + font-weight: 700; + padding: 0.9rem 2.2rem; + border-radius: 12px; + transition: var(--r-transition); + text-transform: uppercase; + letter-spacing: 1px; + box-shadow: 0 8px 20px var(--r-cyan-glow); } -/* Sidebar Navigation */ -.sticky-sidebar { - background: #F1EEE6; - border-right: 1px solid rgba(0,0,0,0.05); - padding: 24px 16px; - height: calc(100vh - 72px); - margin-left: -1.5rem; +.btn-neon:hover { + transform: translateY(-3px); + box-shadow: 0 12px 30px var(--r-cyan-glow); } -.sidebar-nav .nav-link { - padding: 10px 16px; - border-radius: 50px; - margin-bottom: 4px; - gap: 12px; - color: var(--cg-slate); - font-weight: 500; - transition: background-color 0.2s ease; +.btn-outline-cg { + border: 2px solid var(--r-silver-dim); + color: var(--r-silver); + font-weight: 600; + padding: 0.8rem 2rem; + border-radius: 12px; + transition: var(--r-transition); } -.sidebar-nav .nav-link:hover { - background-color: rgba(0,0,0,0.03); +.btn-outline-cg:hover { + border-color: var(--r-neon-green); + color: var(--r-neon-green); + box-shadow: 0 0 20px var(--r-neon-glow); + background: transparent; } -.sidebar-nav .nav-link.active { - background-color: rgba(93,156,236,0.12); - color: var(--cg-slate); - opacity: 1; +/* Cards & Panels */ +.card, .profile-card, .glass-panel { + background: rgba(255, 255, 255, 0.02) !important; + backdrop-filter: blur(15px); + -webkit-backdrop-filter: blur(15px); + border: 1px solid var(--r-glass-border) !important; + border-radius: 28px; + transition: var(--r-transition); + color: var(--r-silver) !important; } -.sidebar-nav .nav-link i { - font-size: 1.1rem; +.card:hover { + border-color: var(--r-cyan) !important; + box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5); + background: rgba(255, 255, 255, 0.04) !important; } -/* Components */ -.card, .profile-card, .suggestion-card { - background: var(--cg-white); - border: none; - border-radius: 16px; - box-shadow: 0 10px 30px rgba(0,0,0,0.06); - transition: var(--cg-transition); - overflow: hidden; +/* Hero Title */ +.hero-title { + font-size: 5rem; + font-weight: 800; + line-height: 1.1; + margin-bottom: 2rem; + background: linear-gradient(135deg, #FFFFFF 0%, var(--r-silver) 40%, var(--r-cyan) 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; } -.stat-widget { - background: var(--cg-white); - border: none; - border-radius: 16px; - box-shadow: 0 6px 16px rgba(0,0,0,0.05); - padding: 24px; - transition: var(--cg-transition); -} - -.card:hover, .profile-card:hover, .stat-widget:hover { - transform: translateY(-2px); - box-shadow: 0 12px 36px rgba(0,0,0,0.08); -} - -.dashboard-section { - margin-bottom: 40px; -} - -/* Badges & Tags */ -.intent-badge { - background-color: var(--cg-sand-secondary); - color: var(--cg-blue); - border: 1px solid rgba(93, 156, 236, 0.2); - border-radius: 30px; - padding: 4px 14px; - font-size: 0.8rem; - font-weight: 500; -} - -.post-badge { - font-family: 'Inter', sans-serif; - font-size: 0.7rem; - font-weight: 600; - text-transform: uppercase; - letter-spacing: 0.03em; - padding: 4px 10px; - border-radius: 6px; - background-color: var(--cg-sand-secondary); - color: var(--cg-muted); - border: 1px solid var(--cg-divider); -} - -/* Specific Page Refinements */ -.hero-section { - padding: 120px 0 80px; - background-color: var(--cg-sand-primary); - text-align: center; -} - -.bottom-nav { - background: rgba(255, 255, 255, 0.95); - backdrop-filter: blur(10px); - border-top: 1px solid var(--cg-divider); - padding: 12px 0; -} - -.bottom-nav-item { - color: var(--cg-muted); -} - -.bottom-nav-item.active { - color: var(--cg-slate); -} - -/* Forms */ +/* Form Styling */ .form-control, .form-select { - background-color: var(--cg-white); - border: 1px solid var(--cg-divider); - border-radius: var(--cg-radius-md); - padding: 12px 16px; - transition: var(--cg-transition); + background: rgba(255, 255, 255, 0.05) !important; + border: 1px solid var(--r-glass-border) !important; + border-radius: 14px; + color: white !important; + padding: 0.9rem 1.4rem; } .form-control:focus { - border-color: var(--cg-blue); - box-shadow: 0 0 0 4px rgba(93, 156, 236, 0.05); + border-color: var(--r-cyan) !important; + box-shadow: 0 0 15px var(--r-cyan-glow); + background: rgba(255, 255, 255, 0.08) !important; } -/* Divider Customization */ -hr { - border-top: 1px solid var(--cg-divider); - opacity: 1; +/* Mobile Nav Enhancement */ +.bottom-nav { + background: rgba(5, 10, 24, 0.95); + backdrop-filter: blur(25px); + border-top: 1px solid var(--r-glass-border); + height: 80px; } -/* Utils */ -.rounded-cg { border-radius: var(--cg-radius-lg); } -.shadow-soft { box-shadow: var(--cg-shadow-soft); } +.bottom-nav-item { + color: var(--r-silver-dim) !important; + transition: var(--r-transition); +} + +.bottom-nav-item.active { + color: var(--r-cyan) !important; + text-shadow: 0 0 10px var(--r-cyan-glow); +} + +/* Global Overrides */ +.bg-light, .bg-white { + background-color: transparent !important; +} + +.text-muted { + color: var(--r-silver-dim) !important; +} + +/* Scrollbar */ +::-webkit-scrollbar { width: 10px; } +::-webkit-scrollbar-track { background: var(--r-navy-deep); } +::-webkit-scrollbar-thumb { background: #1C2541; border-radius: 5px; border: 2px solid var(--r-navy-deep); } +::-webkit-scrollbar-thumb:hover { background: var(--r-cyan); } diff --git a/staticfiles/core/images/logo.png b/staticfiles/core/images/logo.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/core/images/logo.png differ diff --git a/staticfiles/css/custom.css b/staticfiles/css/custom.css index 108056f..d534da1 100644 --- a/staticfiles/css/custom.css +++ b/staticfiles/css/custom.css @@ -1,21 +1,172 @@ +@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap'); :root { - --bg-color-start: #6a11cb; - --bg-color-end: #2575fc; - --text-color: #ffffff; - --card-bg-color: rgba(255, 255, 255, 0.01); - --card-border-color: rgba(255, 255, 255, 0.1); + --r-navy-deep: #050A18; + --r-navy-soft: #0C162D; + --r-cyan: #00B4DB; + --r-cyan-glow: rgba(0, 180, 219, 0.4); + --r-neon-green: #39FF14; + --r-neon-glow: rgba(57, 255, 20, 0.4); + --r-silver: #E0E0E0; + --r-silver-dim: #A0A0A0; + --r-glass-bg: rgba(255, 255, 255, 0.03); + --r-glass-border: rgba(224, 224, 224, 0.2); + --r-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } + body { - margin: 0; - font-family: 'Inter', sans-serif; - background: linear-gradient(45deg, var(--bg-color-start), var(--bg-color-end)); - color: var(--text-color); - display: flex; - justify-content: center; - align-items: center; - min-height: 100vh; - text-align: center; - overflow: hidden; - position: relative; + background: radial-gradient(circle at top center, #101B38 0%, var(--r-navy-deep) 100%); + background-attachment: fixed; + color: var(--r-silver); + font-family: 'Inter', sans-serif; + min-height: 100vh; + margin: 0; + padding: 0; + overflow-x: hidden; } + +h1, h2, h3, h4, .brand-font { + font-family: 'Playfair Display', serif; + letter-spacing: -0.01em; +} + +/* Metallic Text Effect */ +.text-metallic { + background: linear-gradient(135deg, #FFFFFF 0%, var(--r-silver) 50%, var(--r-silver-dim) 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +/* Glassmorphism Navbar */ +.navbar { + background: rgba(5, 10, 24, 0.85) !important; + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + border-bottom: 1px solid var(--r-glass-border); + padding: 1rem 0; +} + +.nav-link { + color: var(--r-silver-dim) !important; + font-weight: 500; + text-transform: uppercase; + font-size: 0.85rem; + letter-spacing: 1px; + transition: var(--r-transition); +} + +.nav-link:hover, .nav-link.active { + color: var(--r-cyan) !important; + text-shadow: 0 0 15px var(--r-cyan-glow); +} + +/* Custom Buttons */ +.btn-neon { + background: linear-gradient(135deg, var(--r-cyan) 0%, #0083B0 100%); + color: white !important; + border: none; + font-weight: 700; + padding: 0.9rem 2.2rem; + border-radius: 12px; + transition: var(--r-transition); + text-transform: uppercase; + letter-spacing: 1px; + box-shadow: 0 8px 20px var(--r-cyan-glow); +} + +.btn-neon:hover { + transform: translateY(-3px); + box-shadow: 0 12px 30px var(--r-cyan-glow); +} + +.btn-outline-cg { + border: 2px solid var(--r-silver-dim); + color: var(--r-silver); + font-weight: 600; + padding: 0.8rem 2rem; + border-radius: 12px; + transition: var(--r-transition); +} + +.btn-outline-cg:hover { + border-color: var(--r-neon-green); + color: var(--r-neon-green); + box-shadow: 0 0 20px var(--r-neon-glow); + background: transparent; +} + +/* Cards & Panels */ +.card, .profile-card, .glass-panel { + background: rgba(255, 255, 255, 0.02) !important; + backdrop-filter: blur(15px); + -webkit-backdrop-filter: blur(15px); + border: 1px solid var(--r-glass-border) !important; + border-radius: 28px; + transition: var(--r-transition); + color: var(--r-silver) !important; +} + +.card:hover { + border-color: var(--r-cyan) !important; + box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5); + background: rgba(255, 255, 255, 0.04) !important; +} + +/* Hero Title */ +.hero-title { + font-size: 5rem; + font-weight: 800; + line-height: 1.1; + margin-bottom: 2rem; + background: linear-gradient(135deg, #FFFFFF 0%, var(--r-silver) 40%, var(--r-cyan) 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +/* Form Styling */ +.form-control, .form-select { + background: rgba(255, 255, 255, 0.05) !important; + border: 1px solid var(--r-glass-border) !important; + border-radius: 14px; + color: white !important; + padding: 0.9rem 1.4rem; +} + +.form-control:focus { + border-color: var(--r-cyan) !important; + box-shadow: 0 0 15px var(--r-cyan-glow); + background: rgba(255, 255, 255, 0.08) !important; +} + +/* Mobile Nav Enhancement */ +.bottom-nav { + background: rgba(5, 10, 24, 0.95); + backdrop-filter: blur(25px); + border-top: 1px solid var(--r-glass-border); + height: 80px; +} + +.bottom-nav-item { + color: var(--r-silver-dim) !important; + transition: var(--r-transition); +} + +.bottom-nav-item.active { + color: var(--r-cyan) !important; + text-shadow: 0 0 10px var(--r-cyan-glow); +} + +/* Global Overrides */ +.bg-light, .bg-white { + background-color: transparent !important; +} + +.text-muted { + color: var(--r-silver-dim) !important; +} + +/* Scrollbar */ +::-webkit-scrollbar { width: 10px; } +::-webkit-scrollbar-track { background: var(--r-navy-deep); } +::-webkit-scrollbar-thumb { background: #1C2541; border-radius: 5px; border: 2px solid var(--r-navy-deep); } +::-webkit-scrollbar-thumb:hover { background: var(--r-cyan); } diff --git a/staticfiles/pasted-20260217-172745-5275e704.png b/staticfiles/pasted-20260217-172745-5275e704.png new file mode 100644 index 0000000..bde165a Binary files /dev/null and b/staticfiles/pasted-20260217-172745-5275e704.png differ diff --git a/staticfiles/pasted-20260217-184853-b9782cb3.png b/staticfiles/pasted-20260217-184853-b9782cb3.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/pasted-20260217-184853-b9782cb3.png differ diff --git a/staticfiles/pasted-20260217-185432-d5369dd4.png b/staticfiles/pasted-20260217-185432-d5369dd4.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/pasted-20260217-185432-d5369dd4.png differ diff --git a/staticfiles/pasted-20260217-185935-a2ab29fc.png b/staticfiles/pasted-20260217-185935-a2ab29fc.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/pasted-20260217-185935-a2ab29fc.png differ diff --git a/staticfiles/pasted-20260217-190126-64d72bd8.png b/staticfiles/pasted-20260217-190126-64d72bd8.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/pasted-20260217-190126-64d72bd8.png differ diff --git a/staticfiles/pasted-20260217-190514-e29c5229.png b/staticfiles/pasted-20260217-190514-e29c5229.png new file mode 100644 index 0000000..456e021 Binary files /dev/null and b/staticfiles/pasted-20260217-190514-e29c5229.png differ