InstaCap / Style.css
YUVALON's picture
Create Style.css
ebcf4d7 verified
/* Import Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
/* Main gradient background - Instagram inspired */
.gradio-container {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
font-family: 'Poppins', sans-serif !important;
min-height: 100vh !important;
}
/* Alternative Instagram gradients */
.gradio-container.alt-gradient-1 {
background: linear-gradient(45deg, #f093fb 0%, #f5576c 100%) !important;
}
.gradio-container.alt-gradient-2 {
background: linear-gradient(45deg, #4facfe 0%, #00f2fe 100%) !important;
}
.gradio-container.alt-gradient-3 {
background: linear-gradient(45deg, #ff9a9e 0%, #fecfef 50%, #fecfef 100%) !important;
}
/* Glass morphism container */
.contain {
background: rgba(255, 255, 255, 0.1) !important;
backdrop-filter: blur(10px) !important;
border-radius: 20px !important;
border: 1px solid rgba(255, 255, 255, 0.2) !important;
box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37) !important;
margin: 20px !important;
padding: 30px !important;
}
/* Title styling with Instagram colors */
h1 {
background: linear-gradient(45deg, #ff6b6b, #4ecdc4, #45b7d1, #f9ca24) !important;
-webkit-background-clip: text !important;
-webkit-text-fill-color: transparent !important;
background-clip: text !important;
text-align: center !important;
font-weight: 700 !important;
font-size: 2.5rem !important;
margin-bottom: 1rem !important;
text-shadow: 0 4px 8px rgba(0,0,0,0.1) !important;
animation: titleGlow 2s ease-in-out infinite alternate !important;
}
@keyframes titleGlow {
from { filter: drop-shadow(0 0 10px rgba(255, 107, 107, 0.3)); }
to { filter: drop-shadow(0 0 20px rgba(78, 205, 196, 0.4)); }
}
/* Input styling with Instagram vibes */
.gr-textbox {
background: rgba(255, 255, 255, 0.9) !important;
border-radius: 25px !important;
border: 2px solid transparent !important;
background-clip: padding-box !important;
box-shadow: 0 4px 16px rgba(0,0,0,0.1) !important;
font-size: 16px !important;
padding: 15px 20px !important;
transition: all 0.3s ease !important;
font-family: 'Poppins', sans-serif !important;
}
.gr-textbox:focus {
border: 2px solid #4ecdc4 !important;
box-shadow: 0 4px 20px rgba(78, 205, 196, 0.3) !important;
transform: translateY(-2px) !important;
background: rgba(255, 255, 255, 0.95) !important;
}
.gr-textbox::placeholder {
color: #999 !important;
font-style: italic !important;
}
/* Button styling with Instagram gradient */
.gr-button {
background: linear-gradient(45deg, #ff6b6b, #4ecdc4) !important;
border: none !important;
border-radius: 25px !important;
color: white !important;
font-weight: 600 !important;
font-size: 18px !important;
padding: 15px 30px !important;
box-shadow: 0 6px 20px rgba(255, 107, 107, 0.3) !important;
transition: all 0.3s ease !important;
text-transform: uppercase !important;
letter-spacing: 1px !important;
cursor: pointer !important;
font-family: 'Poppins', sans-serif !important;
}
.gr-button:hover {
transform: translateY(-3px) !important;
box-shadow: 0 8px 25px rgba(255, 107, 107, 0.4) !important;
background: linear-gradient(45deg, #ff5252, #26a69a) !important;
}
.gr-button:active {
transform: translateY(-1px) !important;
}
/* Output textbox styling */
.gr-textbox[data-testid="textbox"] {
background: rgba(255, 255, 255, 0.95) !important;
border-radius: 20px !important;
border: 1px solid rgba(255, 255, 255, 0.3) !important;
font-size: 16px !important;
line-height: 1.6 !important;
padding: 20px !important;
box-shadow: inset 0 2px 4px rgba(0,0,0,0.1) !important;
}
/* Examples styling */
.gr-examples {
background: rgba(255, 255, 255, 0.1) !important;
border-radius: 15px !important;
padding: 20px !important;
backdrop-filter: blur(5px) !important;
border: 1px solid rgba(255, 255, 255, 0.2) !important;
}
.gr-examples .gr-button {
background: rgba(255, 255, 255, 0.2) !important;
border: 1px solid rgba(255, 255, 255, 0.3) !important;
border-radius: 20px !important;
color: white !important;
transition: all 0.3s ease !important;
font-size: 14px !important;
padding: 10px 20px !important;
margin: 5px !important;
}
.gr-examples .gr-button:hover {
background: rgba(255, 255, 255, 0.3) !important;
transform: translateY(-1px) !important;
}
/* Labels styling */
.gr-label {
color: white !important;
font-weight: 500 !important;
font-size: 16px !important;
margin-bottom: 8px !important;
font-family: 'Poppins', sans-serif !important;
}
/* Markdown styling */
.gr-markdown {
color: white !important;
font-size: 16px !important;
line-height: 1.6 !important;
font-family: 'Poppins', sans-serif !important;
}
.gr-markdown h3 {
color: #4ecdc4 !important;
font-weight: 600 !important;
margin-top: 20px !important;
text-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}
.gr-markdown strong {
color: #ff6b6b !important;
font-weight: 600 !important;
}
/* Copy button styling */
.gr-copy-button {
background: linear-gradient(45deg, #45b7d1, #f9ca24) !important;
border: none !important;
border-radius: 10px !important;
color: white !important;
font-weight: 500 !important;
transition: all 0.3s ease !important;
}
.gr-copy-button:hover {
background: linear-gradient(45deg, #2196f3, #ff9800) !important;
transform: scale(1.05) !important;
}
/* Scrollbar styling */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: rgba(255, 255, 255, 0.1);
border-radius: 10px;
}
::-webkit-scrollbar-thumb {
background: linear-gradient(45deg, #ff6b6b, #4ecdc4);
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
background: linear-gradient(45deg, #ff5252, #26a69a);
}
/* Loading animation */
@keyframes pulse {
0% { opacity: 1; }
50% { opacity: 0.5; }
100% { opacity: 1; }
}
.gr-button.loading {
animation: pulse 1.5s ease-in-out infinite;
}
/* Floating animation for buttons */
@keyframes float {
0% { transform: translateY(0px); }
50% { transform: translateY(-10px); }
100% { transform: translateY(0px); }
}
.gr-button {
animation: float 3s ease-in-out infinite;
}
/* Row and column spacing */
.gr-row {
gap: 20px !important;
}
.gr-column {
padding: 10px !important;
}
/* Mobile responsiveness */
@media (max-width: 768px) {
.contain {
margin: 10px !important;
padding: 20px !important;
}
h1 {
font-size: 2rem !important;
}
.gr-button {
font-size: 16px !important;
padding: 12px 25px !important;
}
.gr-textbox {
font-size: 14px !important;
}
}
/* Success and error states */
.success {
border-left: 4px solid #4caf50 !important;
background: rgba(76, 175, 80, 0.1) !important;
}
.error {
border-left: 4px solid #f44336 !important;
background: rgba(244, 67, 54, 0.1) !important;
}
/* Hover effects for containers */
.contain:hover {
transform: translateY(-2px) !important;
box-shadow: 0 12px 40px 0 rgba(31, 38, 135, 0.5) !important;
transition: all 0.3s ease !important;
}
/* Gradient text for special elements */
.gradient-text {
background: linear-gradient(45deg, #ff6b6b, #4ecdc4, #45b7d1, #f9ca24) !important;
-webkit-background-clip: text !important;
-webkit-text-fill-color: transparent !important;
background-clip: text !important;
font-weight: 600 !important;
}
/* Icon styling */
.icon {
font-size: 1.2em !important;
margin-right: 8px !important;
vertical-align: middle !important;
}
/* Notification styling */
.notification {
position: fixed;
top: 20px;
right: 20px;
background: rgba(255, 255, 255, 0.9);
border-radius: 15px;
padding: 15px 20px;
box-shadow: 0 4px 20px rgba(0,0,0,0.1);
z-index: 1000;
animation: slideIn 0.3s ease-out;
}
@keyframes slideIn {
from { transform: translateX(100%); opacity: 0; }
to { transform: translateX(0); opacity: 1; }
}