Gigil / styles.css
insunlitgrace's picture
Update styles.css
9604f13 verified
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;700&family=Inter:wght@300;400;500&display=swap');
body {
background:
linear-gradient(rgba(5,25,50,0.85), rgba(5,25,50,0.85)),
url('https://images.unsplash.com/photo-1532187863486-abf9dbad1b69');
background-size: cover;
background-attachment: fixed;
font-family: 'Inter', sans-serif;
color: white;
}
/* Main Panel */
.gradio-container {
max-width: 1250px;
margin: auto;
background: rgba(10,25,45,0.75);
backdrop-filter: blur(12px);
border-radius: 18px;
padding: 30px;
box-shadow: 0px 25px 60px rgba(0,0,0,0.7);
border: 1px solid rgba(255,255,255,0.15);
}
/* Title */
h1 {
font-family: 'Montserrat', sans-serif;
font-size: 48px;
font-weight: 700;
text-align: center;
background: linear-gradient(90deg, #4fc3f7, #29b6f6, #81d4fa);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
letter-spacing: 2px;
margin-bottom: 5px;
}
.subtitle-text, .subtitle-text * {
color: white !important;
text-align: center;
font-size: 18px;
}
.credits-text, .credits-text * {
color: white !important;
text-align: center;
font-size: 15px;
}
/* Cards */
.chem-card {
background: rgba(20,40,70,0.9) !important;
border-radius: 16px !important;
padding: 20px !important;
box-shadow: 0px 10px 25px rgba(0,0,0,0.6) !important;
border: 1px solid rgba(120,180,255,0.3) !important;
transition: 0.3s;
box-sizing: border-box !important;
}
.chem-card:hover {
transform: translateY(-3px);
box-shadow: 0px 20px 40px rgba(0,0,0,0.8) !important;
}
h3 {
color: #4fc3f7;
font-weight: 600;
}
textarea, input {
background: #0d1b2a !important;
color: white !important;
border-radius: 10px !important;
border: 1px solid #4fc3f7 !important;
padding: 12px !important;
font-size: 15px !important;
}
button {
background: linear-gradient(45deg, #1976d2, #29b6f6) !important;
color: white !important;
border-radius: 10px !important;
font-weight: 600 !important;
padding: 12px 24px !important;
border: none !important;
box-shadow: 0px 5px 20px rgba(0,150,255,0.7);
transition: 0.3s;
}
button:hover {
background: linear-gradient(45deg, #42a5f5, #81d4fa) !important;
transform: translateY(-2px);
box-shadow: 0px 10px 30px rgba(0,150,255,0.9);
}
.examples {
background: rgba(30,60,100,0.7);
border-radius: 12px;
border: 1px solid rgba(100,180,255,0.3);
padding: 10px;
}
.footer-text, .footer-text * {
color: white !important;
text-align: center;
font-size: 15px;
}
/* Cards stretch equally in the row */
#main-row {
align-items: stretch !important;
}
#left-card,
#right-card {
flex: 1 1 0 !important;
min-width: 0 !important;
display: flex !important;
flex-direction: column !important;
box-sizing: border-box !important;
}
/* =============================================
REACTANT MOLECULE GRID
The KEY fix: border-radius on the CONTAINER
with overflow:hidden clips the cells cleanly.
No per-cell radius needed at all.
============================================= */
.mol-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 2px; /* thin dark line between cells */
width: 100%;
box-sizing: border-box;
margin: 8px 0;
background: rgba(10,25,45,0.9); /* gap colour matches card bg */
border-radius: 8px; /* rounds the whole grid as one unit */
overflow: hidden; /* clips cell corners — this is the fix */
}
.mol-cell {
background: white;
aspect-ratio: 1 / 1;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
box-sizing: border-box;
/* NO border-radius here — the container handles it */
}
.mol-cell img {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}
.mol-invalid {
color: #888;
font-size: 12px;
padding: 8px;
text-align: center;
}
/* =============================================
PRODUCT IMAGE BOX
============================================= */
.product-box {
width: 100%;
box-sizing: border-box;
background: white;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
min-height: 300px;
margin: 8px 0;
overflow: hidden;
}
.product-box img {
width: 100%;
height: auto;
display: block;
object-fit: contain;
}
.product-placeholder {
color: #aaa;
font-size: 14px;
}
/* Strip Gradio wrapper chrome from HTML components */
.gr-html {
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
border: none !important;
box-shadow: none !important;
}