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