Spaces:
Running
Running
# Custom CSS for fullscreen image with overlay and styled form components | |
custom_css = """ | |
html, body { | |
height: 100%; | |
width: 100%; | |
margin: 0; | |
padding: 0; | |
} | |
.constructor-page { | |
height: 100vh !important; | |
overflow-y: auto !important; | |
padding-bottom: var(--size-8); | |
padding-right: var(--size-8); | |
} | |
.app { | |
padding-right: 0 !important; | |
} | |
gradio-app { | |
height: 100% !important; | |
} | |
/* -------- FULLSCREEN BACKGROUND & NARRATIVE -------- */ | |
.image-container { | |
position: fixed !important; | |
top: 0 !important; | |
left: 0 !important; | |
width: 100vw !important; | |
z-index: 1 !important; | |
} | |
.image-container img { | |
width: 100vw !important; | |
object-fit: cover !important; | |
} | |
.overlay-content { | |
position: fixed !important; | |
bottom: 0 !important; | |
left: 0 !important; | |
right: 0 !important; | |
background: linear-gradient( | |
transparent, rgba(0,0,0,0.8) | |
) !important; | |
padding: 40px 20px 20px !important; | |
z-index: 10 !important; | |
color: white !important; | |
max-height: 100vh !important; | |
overflow-y: auto !important; | |
} | |
.overlay-content .form { | |
background: transparent !important; | |
} | |
.narrative-text { | |
background: rgba(0,0,0,0.7) !important; | |
border: none !important; | |
color: white !important; | |
font-size: 15px !important; | |
line-height: 1.5 !important; | |
padding: 10px !important; | |
border-radius: 10px !important; | |
margin-bottom: 10px !important; | |
} | |
.narrative-text textarea { | |
background: transparent !important; | |
border: none !important; | |
color: white !important; | |
-webkit-text-fill-color: white !important; | |
font-size: 15px !important; | |
resize: none !important; | |
} | |
img { | |
pointer-events: none; | |
} | |
/* -------- CHOICE SECTION -------- */ | |
.choice-area { | |
background: rgba(0,0,0,0.7) !important; | |
border-radius: 10px !important; | |
padding: 10px !important; | |
} | |
.choice-buttons { | |
background: transparent !important; | |
border-radius: 10px !important; | |
padding: 10px !important; | |
} | |
.choice-buttons > div, | |
.choice-buttons fieldset { | |
background: transparent !important; | |
border: none !important; | |
} | |
.choice-buttons label, | |
.choice-buttons label span { | |
color: white !important; | |
font-size: 14px !important; | |
} | |
.choice-buttons input[type="radio"] { | |
background: transparent !important; | |
border: 2px solid white !important; | |
} | |
.choice-buttons input[type="radio"]:checked { | |
background: white !important; | |
} | |
.choice-buttons .form-radio { | |
background: transparent !important; | |
} | |
.choice-buttons * { | |
background-color: transparent !important; | |
} | |
.choice-buttons input { | |
background-color: transparent !important; | |
border: 1px solid rgba(255,255,255,0.5) !important; | |
color: white !important; | |
} | |
/* Bold legend/label, no background */ | |
.choice-area .form-label, | |
.choice-area legend { | |
background: transparent !important; | |
color: white !important; | |
border: none !important; | |
} | |
/* -------- CUSTOM INPUT FIELD -------- */ | |
.choice-input textarea { | |
background: transparent !important; | |
border: none !important; | |
color: white !important; | |
border-radius: 10px !important; | |
outline: none !important; | |
box-shadow: none !important; | |
font-size: 15px !important; | |
padding: 10px !important; | |
} | |
.choice-input { | |
background: none !important; | |
margin-top: 10px !important; | |
} | |
/* -------- UI MISCELLANEOUS -------- */ | |
.gradio-header, | |
.gradio-footer { | |
display: none !important; | |
} | |
.image-container .icon-button-wrapper, | |
.image-container .icon-buttons { | |
display: none !important; | |
} | |
#back-btn { | |
position: fixed !important; | |
top: 10px !important; | |
right: 10px !important; | |
z-index: 20 !important; | |
} | |
""" | |
# CSS for the loading indicator | |
loading_css_styles = """ | |
#loading-indicator { | |
position: fixed; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
background-color: rgba(0, 0, 0, 0.8); | |
justify-content: center; | |
align-items: center; | |
z-index: 9999; | |
} | |
#loading-indicator .loading-text { | |
color: white; | |
font-size: 2em; | |
text-align: center; | |
} | |
""" | |