114 lines
3.0 KiB
SCSS
114 lines
3.0 KiB
SCSS
.fusion_accounting_dashboard {
|
|
// Fill the available Odoo content area (below navbar + menu bar)
|
|
// Use 100% of parent instead of 100vh to respect Odoo's own layout
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
|
|
.fusion_dashboard_header {
|
|
border-bottom: 1px solid var(--o-border-color);
|
|
background: var(--o-view-background-color);
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
// Main two-column layout — must fill remaining height
|
|
.fusion_main_layout {
|
|
flex: 1;
|
|
// This is the key: prevent the flex container from growing beyond
|
|
// the viewport, which would push the chat input off-screen
|
|
min-height: 0;
|
|
overflow: hidden;
|
|
}
|
|
|
|
// Left panel: cards + needs attention (scrollable)
|
|
.fusion_left_panel {
|
|
width: 50%;
|
|
min-width: 400px;
|
|
max-width: 600px;
|
|
overflow-y: auto;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
// Health cards: 3 per row
|
|
.fusion_health_cards {
|
|
flex-shrink: 0;
|
|
|
|
.fusion_health_card {
|
|
flex: 0 0 calc(33.333% - 6px);
|
|
min-width: 150px;
|
|
transition: transform 0.15s ease, box-shadow 0.15s ease;
|
|
&:hover {
|
|
transform: translateY(-2px);
|
|
box-shadow: 0 4px 12px rgba(var(--bs-body-color-rgb), 0.1);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Needs Attention: fill remaining left panel space
|
|
.fusion_attention_card {
|
|
flex: 1;
|
|
min-height: 150px;
|
|
overflow: hidden;
|
|
|
|
.card-body {
|
|
overflow-y: auto;
|
|
}
|
|
}
|
|
|
|
// Needs Attention items
|
|
.fusion_attention_item {
|
|
transition: background 0.15s ease;
|
|
&:hover {
|
|
background: rgba(var(--bs-body-color-rgb), 0.04);
|
|
}
|
|
}
|
|
|
|
// Right panel: chat takes all remaining width and height
|
|
.fusion_right_panel {
|
|
flex: 1;
|
|
min-width: 500px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
// Critical: prevent overflow so chat input stays visible
|
|
min-height: 0;
|
|
overflow: hidden;
|
|
|
|
// Override chat panel to fill the container
|
|
.fusion_chat_panel {
|
|
// Fill the right panel completely
|
|
flex: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
border-radius: 0;
|
|
border: none;
|
|
// Must not exceed container
|
|
min-height: 0;
|
|
height: auto !important;
|
|
|
|
.card-header {
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.fusion_chat_messages {
|
|
// Override base chat.scss values that break flex layout
|
|
max-height: none !important;
|
|
min-height: 0 !important;
|
|
// Grow to fill, but scrollable
|
|
flex: 1;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.fusion_chat_input {
|
|
flex-shrink: 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Also ensure the Odoo action container gives us full height
|
|
.o_action_manager {
|
|
.o_action.fusion_accounting_dashboard {
|
|
height: 100%;
|
|
}
|
|
}
|