milwright's picture
submit pull for merge
85bdb4e verified
raw
history blame
6.02 kB
/* Base Tailwind-like styles */
:root {
--color-gray-900: #111827;
--color-gray-800: #1f2937;
--color-gray-700: #374151;
--color-gray-600: #4B5563;
--color-gray-500: #6B7280;
--color-gray-400: #9CA3AF;
--color-gray-300: #D1D5DB;
--color-gray-200: #E5E7EB;
--color-gray-100: #F3F4F6;
--color-gray-50: #F9FAFB;
--color-blue-900: #1E3A8A;
--color-blue-800: #1E40AF;
--color-blue-700: #1D4ED8;
--color-blue-600: #2563EB;
--color-blue-500: #3B82F6;
--color-blue-400: #60A5FA;
--color-blue-300: #93C5FD;
--color-blue-200: #BFDBFE;
--color-blue-100: #DBEAFE;
--color-blue-50: #EFF6FF;
--color-yellow-50: #FFFBEB;
--color-yellow-100: #FEF3C7;
}
/* Global Styles */
.stApp {
background-color: var(--color-gray-900);
color: white;
}
/* Main header */
.main-header {
background-color: black;
padding: 1rem;
border-bottom: 1px solid var(--color-gray-700);
}
.title-text {
font-size: 1.5rem;
font-weight: bold;
color: white;
}
/* Content containers */
.content-container {
background-color: var(--color-gray-800);
border-radius: 0.75rem;
padding: 1.5rem;
margin-bottom: 1.5rem;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
color: white;
}
.blue-container {
background-color: var(--color-blue-100);
color: var(--color-gray-900);
border-radius: 0.75rem;
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.yellow-container {
background-color: var(--color-yellow-50);
color: var(--color-gray-900);
border-radius: 0.75rem;
padding: 1.5rem;
margin-bottom: 1.5rem;
}
/* Card grid styles */
.card-grid {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 1.5rem;
margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
.card-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.card {
background-color: var(--color-gray-700);
border-radius: 0.5rem;
padding: 1rem;
color: white;
}
/* Special containers */
.key-concept {
background-color: var(--color-gray-700);
border-radius: 0.5rem;
padding: 0.75rem;
margin: 1rem 0;
border-left: 3px solid var(--color-blue-500);
color: white;
}
.research-question {
background-color: var(--color-blue-900);
border-radius: 0.5rem;
padding: 0.75rem;
margin: 1rem 0;
border-left: 3px solid var(--color-blue-400);
color: white;
}
.quote-container {
font-style: italic;
color: var(--color-gray-300);
padding: 0.5rem 1rem;
border-left: 3px solid var(--color-gray-600);
margin: 1rem 0;
}
/* Navigation */
.nav-container {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
background-color: black;
border-top: 1px solid var(--color-gray-700);
padding: 0.75rem 1rem;
display: flex;
justify-content: space-between;
z-index: 1000;
}
.nav-buttons {
display: flex;
gap: 0.5rem;
}
.prev-button {
background-color: var(--color-gray-700);
color: white;
padding: 0.5rem 1rem;
border-radius: 0.25rem;
border: none;
cursor: pointer;
}
.prev-button:hover {
background-color: var(--color-gray-600);
}
.next-button {
background-color: var(--color-blue-600);
color: white;
padding: 0.5rem 1rem;
border-radius: 0.25rem;
border: none;
cursor: pointer;
}
.next-button:hover {
background-color: var(--color-blue-700);
}
.nav-dots {
display: none;
}
@media (min-width: 768px) {
.nav-dots {
display: flex;
gap: 0.25rem;
}
}
.nav-dot {
width: 2rem;
height: 2rem;
display: flex;
align-items: center;
justify-content: center;
color: var(--color-gray-300);
border-radius: 0.25rem;
text-decoration: none;
font-size: 0.875rem;
}
.nav-dot:hover {
background-color: var(--color-gray-800);
}
.nav-dot.active {
background-color: var(--color-blue-800);
color: white;
font-weight: 500;
}
/* Override Streamlit Styles */
.stTextInput > div > div > input {
background-color: var(--color-gray-700);
color: white;
}
.stSelectbox > div > div > div {
background-color: var(--color-gray-700);
color: white;
}
.stCheckbox > div > label {
color: white;
}
/* Button styling */
.stButton > button {
background-color: var(--color-blue-600);
color: white;
}
.stButton > button:hover {
background-color: var(--color-blue-700);
}
/* Sidebars */
[data-testid="stSidebar"] {
background-color: var(--color-gray-900);
}
[data-testid="stSidebar"] .stMarkdown {
color: white;
}
/* Module card styles */
.module-card {
background-color: var(--color-gray-800);
border-radius: 0.5rem;
padding: 1rem;
margin-bottom: 1rem;
border-top: 4px solid var(--color-blue-500);
transition: transform 0.2s;
}
.module-card:hover {
transform: translateY(-3px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.module-number {
background-color: var(--color-blue-500);
color: white;
font-weight: bold;
padding: 0.25rem 0.5rem;
border-radius: 1rem;
font-size: 0.9rem;
display: inline-block;
margin-bottom: 0.5rem;
}
.module-title {
font-weight: 600;
margin-bottom: 0.5rem;
font-size: 1.1rem;
}
/* Add space at bottom for fixed nav */
.main-content {
padding-bottom: 4rem;
}
/* Tool container styles */
.tool-container {
background-color: var(--color-gray-800);
color: white;
padding: 1.5rem;
border-radius: 0.5rem;
border: 1px solid var(--color-gray-700);
margin-bottom: 1.5rem;
}
/* Upload container */
.upload-container {
border: 2px dashed var(--color-gray-600);
padding: 1.5rem;
text-align: center;
border-radius: 0.5rem;
margin-bottom: 1rem;
background-color: var(--color-gray-700);
}
/* Footer spacing */
.footer-spacer {
height: 4rem;
}
/* Tabs */
.stTabs [data-baseweb="tab"] {
color: white;
}
.stTabs [data-baseweb="tab-highlight"] {
background-color: var(--color-blue-600);
}