ngt-ai-platform / style.css
GaetanoParente's picture
rivista grafica modulo forecasting
1ad9db6
/* --- HEADER & LOGO --- */
.header-row {
display: flex !important;
align-items: flex-end !important;
gap: 20px !important;
margin-bottom: 30px !important;
padding-bottom: 20px;
border-bottom: 1px solid #e2e8f0;
}
.h4-margin{
margin: 4px 6px 6px 4px;
}
.logo-container img { margin-bottom: 4px !important; object-fit: contain; }
.header-text-col h1 {
font-family: 'Inter', sans-serif !important;
font-weight: 900 !important;
font-size: 2.2em !important;
background: linear-gradient(90deg, #D65DB1 0%, #8B5CF6 50%, #F43F5E 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
text-align: left !important;
margin-bottom: -2px !important;
padding-bottom: 0 !important;
line-height: 1.0 !important;
}
.header-text-col .subheader {
text-align: left !important; color: #64748b; font-size: 1.1em; font-weight: 500;
margin-top: 0 !important; padding-top: 0 !important;
}
/* --- CUSTOM TABS STYLE --- */
.tabs > .tab-nav { border-bottom: none !important; gap: 8px !important; margin-bottom: 15px !important; }
.tabs > .tab-nav > button {
border: 1px solid #e5e7eb !important; border-radius: 10px !important;
background-color: white; color: #475569 !important; font-weight: 600 !important;
padding: 6px 16px !important; transition: all 0.2s;
}
.tabs > .tab-nav > button:hover { background-color: #f1f5f9 !important; transform: translateY(-1px); }
.tabs > .tab-nav > button.selected {
background: linear-gradient(135deg, #8B5CF6 0%, #D65DB1 100%) !important;
color: white !important; border: 1px solid transparent !important;
box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3) !important;
}
/* --- COMPONENTS --- */
button.primary {
background: linear-gradient(135deg, #8B5CF6 0%, #D65DB1 100%) !important;
border: none !important; color: white !important; transition: filter 0.2s;
}
button.primary:hover { filter: brightness(1.1); box-shadow: 0 4px 15px rgba(139, 92, 246, 0.4); }
.fixed-height { height: 380px !important; overflow: hidden !important; }
.fixed-height button, .fixed-height .image-container, .fixed-height .upload-container {
height: 100% !important; max-height: 100% !important; min-height: 100% !important;
}
.fixed-height img { object-fit: contain !important; max-height: 100% !important; }
.fixed-height-tab2 {height: 500px}
/* Model Card tab BPO */
.model-card {
background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 15px;
font-size: 0.9em; color: #475569; margin-top: 10px;
}
.model-card strong{
color: #475569 !important
}
/* --- MOBILE RESPONSIVE --- */
@media (max-width: 768px) {
/* Gestione Contenitore Principale*/
.gradio-container {
padding-left: 15px !important;
padding-right: 15px !important;
max-width: 100% !important;
overflow-x: hidden !important;
}
/* Header più compatto e centrato */
.header-row {
flex-direction: row !important;
align-items: center !important;
justify-content: flex-start !important;
gap: 15px !important;
margin-bottom: 20px !important;
height: auto !important;
text-align: left !important;
padding-left: 5px !important;
padding-right: 5px !important;
}
.logo-container {
width: auto !important;
flex-shrink: 0 !important;
flex-grow: 0 !important;
margin: 0 !important;
padding: 0 !important;
display: flex !important;
align-items: center !important;
overflow: visible !important;
}
.logo-container img {
height: 60px !important;
width: auto !important;
margin-bottom: 0 !important;
object-fit: contain !important;
}
.header-text-col {
width: auto !important;
min-width: 0 !important;
flex-grow: 1 !important;
display: flex !important;
flex-direction: column !important;
justify-content: center !important;
}
.header-text-col h1 {
text-align: left !important;
font-size: 1.5em !important;
line-height: 1.2 !important;
margin-bottom: 2px !important;
white-space: normal !important;
word-wrap: break-word !important;
}
.header-text-col .subheader {
text-align: left !important;
font-size: 0.85rem !important;
margin-top: 0 !important;
line-height: 1.2 !important;
display: block !important;
}
/* Responsive Rows: Stack verticale pulito */
.responsive-row {
flex-direction: column !important;
display: flex !important;
gap: 20px !important;
}
.responsive-row > * {
width: 100% !important;
min-width: 0 !important;
margin: 0 !important;
padding: 0 !important;
}
/* Tab Navigation: Griglia 2x2 per i pulsanti */
.tabs > .tab-nav {
display: flex !important;
flex-wrap: wrap !important;
justify-content: center !important;
gap: 8px !important;
}
.tabs > .tab-nav > button {
flex-grow: 1 !important;
text-align: center !important;
font-size: 0.85rem !important;
padding: 8px 4px !important;
width: 48% !important;
min-width: auto !important;
}
button {
min-height: 45px !important;
height: auto !important;
}
.fixed-height {
height: auto !important;
min-height: 300px !important;
}
}
footer {visibility: hidden}