Spaces:
Sleeping
Sleeping
/* Main style elements */ | |
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700&family=Source+Sans+Pro:wght@400;600;700&display=swap'); | |
html, body, [class*="css"] { | |
font-family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, sans-serif; | |
color: #2C363F; | |
} | |
.main .block-container { | |
padding-top: 2rem; | |
padding-bottom: 2rem; | |
} | |
/* Header styling */ | |
.main-header { | |
color: #2C393F; | |
font-weight: 600; | |
text-align: center; | |
margin-bottom: 2rem; | |
} | |
.subheader { | |
color: #557A95; | |
font-weight: 500; | |
font-size: 1.2rem; | |
margin-bottom: 1rem; | |
} | |
/* Card elements */ | |
.card { | |
background-color: #FFFFFF; | |
border-radius: 10px; | |
border: 1px solid #EAEAEA; | |
padding: 1.5rem; | |
margin-bottom: 1rem; | |
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05); | |
transition: all 0.3s ease; | |
} | |
.card:hover { | |
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.1); | |
transform: translateY(-2px); | |
} | |
.card-header { | |
font-weight: 600; | |
margin-bottom: 0.8rem; | |
color: #557A95; | |
border-bottom: 1px solid #EAEAEA; | |
padding-bottom: 0.5rem; | |
} | |
/* Risk level indicators */ | |
.risk-low { | |
color: #7FD8BE; | |
font-weight: 600; | |
} | |
.risk-medium { | |
color: #FFC857; | |
font-weight: 600; | |
} | |
.risk-high { | |
color: #E84855; | |
font-weight: 600; | |
} | |
/* Input area */ | |
.stTextInput > div > div > input { | |
border-radius: 8px; | |
border: 1px solid #CCCCCC; | |
padding: 0.5rem; | |
font-size: 1rem; | |
} | |
.stTextArea > div > div > textarea { | |
border-radius: 8px; | |
border: 1px solid #CCCCCC; | |
padding: 0.8rem; | |
font-size: 1rem; | |
min-height: 150px; | |
} | |
/* Button styling */ | |
.stButton > button { | |
background-color: #557A95; | |
color: white; | |
border: none; | |
border-radius: 8px; | |
padding: 0.5rem 2rem; | |
font-weight: 600; | |
transition: all 0.3s ease; | |
} | |
.stButton > button:hover { | |
background-color: #395B74; | |
color: white; | |
transform: translateY(-2px); | |
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); | |
} | |
.stButton > button:focus { | |
background-color: #395B74; | |
color: white; | |
} | |
/* Symptom highlight styling */ | |
.symptom-highlight { | |
background-color: rgba(255, 200, 87, 0.3); | |
border-radius: 3px; | |
padding: 0 3px; | |
} | |
/* Duration highlight styling */ | |
.duration-highlight { | |
background-color: rgba(127, 216, 190, 0.3); | |
border-radius: 3px; | |
padding: 0 3px; | |
} | |
/* Recommendation styling */ | |
.recommendation-container { | |
background-color: #F8F9FA; | |
border-left: 5px solid #557A95; | |
padding: 1rem; | |
margin: 1rem 0; | |
border-radius: 0 5px 5px 0; | |
} | |
/* History item */ | |
.history-item { | |
padding: 1rem; | |
margin-bottom: 0.5rem; | |
border-radius: 5px; | |
border: 1px solid #EAEAEA; | |
background-color: #F8F9FA; | |
cursor: pointer; | |
transition: all 0.2s ease; | |
} | |
.history-item:hover { | |
background-color: #E9ECEF; | |
} | |
/* Loading animation */ | |
.loading-spinner { | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
margin: 2rem 0; | |
} | |
/* Custom metric container */ | |
.metric-container { | |
background-color: white; | |
border-radius: 10px; | |
padding: 1rem; | |
text-align: center; | |
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05); | |
} | |
.metric-value { | |
font-size: 2.5rem; | |
font-weight: 600; | |
margin: 0.5rem 0; | |
} | |
.metric-label { | |
font-size: 1rem; | |
color: #6c757d; | |
} | |
/* App footer */ | |
.footer { | |
text-align: center; | |
margin-top: 3rem; | |
padding-top: 1rem; | |
border-top: 1px solid #EAEAEA; | |
color: #6c757d; | |
font-size: 0.8rem; | |
} | |
/* Override Streamlit's default padding in widgets */ | |
div.stRadio > div { | |
padding-top: 0.5rem; | |
padding-bottom: 0.5rem; | |
} | |
div.stCheckbox > div { | |
padding-top: 0.5rem; | |
padding-bottom: 0.5rem; | |
} | |
/* Tabs styling */ | |
.stTabs [data-baseweb="tab-list"] { | |
gap: 1rem; | |
} | |
.stTabs [data-baseweb="tab"] { | |
height: 3rem; | |
border-radius: 8px 8px 0 0; | |
padding: 0 1.5rem; | |
background-color: #F8F9FA; | |
} | |
.stTabs [aria-selected="true"] { | |
background-color: white ; | |
border-bottom: 2px solid #557A95 ; | |
font-weight: 600; | |
} | |
/* Responsive adjustments */ | |
@media (max-width: 768px) { | |
.main .block-container { | |
padding-top: 1rem; | |
padding-bottom: 1rem; | |
} | |
.card { | |
padding: 1rem; | |
} | |
.metric-value { | |
font-size: 2rem; | |
} | |
} | |
/* Animation for success message */ | |
@keyframes fadeInUp { | |
from { | |
opacity: 0; | |
transform: translateY(20px); | |
} | |
to { | |
opacity: 1; | |
transform: translateY(0); | |
} | |
} | |
.fadeInUp { | |
animation-name: fadeInUp; | |
animation-duration: 0.5s; | |
animation-fill-mode: both; | |
} |