From 31dac98b48d6059a89b472e16a53147531193a7b Mon Sep 17 00:00:00 2001 From: gabdevele Date: Sat, 13 Jun 2026 13:04:40 +0200 Subject: [PATCH] fix: minor fixes on styling and UI related stuff --- .gitignore | 3 + app/assets/css/style.css | 257 +++++++++++++++++- app/components/BIIcon.vue | 21 +- app/components/Footer.vue | 1 - app/components/Header.vue | 8 +- app/components/dashboard/CitizenDashboard.vue | 3 +- app/pages/dashboard/index.vue | 9 +- app/pages/index.vue | 10 +- app/pages/me.vue | 6 - app/pages/open-data.vue | 4 +- app/pages/reports/create.vue | 8 +- nuxt.config.ts | 6 +- 12 files changed, 293 insertions(+), 43 deletions(-) diff --git a/.gitignore b/.gitignore index 4a7f73a..ad774cb 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ logs .env .env.* !.env.example + +pnpm-*.yaml +AGENTS.md \ No newline at end of file diff --git a/app/assets/css/style.css b/app/assets/css/style.css index c99610d..ebb9486 100644 --- a/app/assets/css/style.css +++ b/app/assets/css/style.css @@ -1,7 +1,260 @@ +:root { + --visione-primary: #06c; + --visione-primary-dark: #17324d; + --visione-text-muted: #455b71; + --visione-text-body: #17324d; + --visione-text-soft: #455b71; + --visione-success: #008758; + --visione-warning: #a66300; + --visione-danger: #d9364f; + --visione-info: #2f80ed; + --visione-light-bg: #f0f6fc; + --visione-home-hero-bg: var(--visione-light-bg); + --visione-font-sans: "Titillium Web", Arial, sans-serif; + --visione-font-mono: "Roboto Mono", monospace; +} + +html, +body { + color: var(--visione-text-body); + font-family: var(--visione-font-sans); + font-size: 1rem; + line-height: 1.5; +} + +button, +input, +select, +textarea { + font-family: var(--visione-font-sans); +} + +code, +kbd, +pre, +samp { + font-family: var(--visione-font-mono); +} + a { - text-decoration: none!important; + text-decoration: none !important; +} + +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6, +.card-title, +.callout-title { + color: var(--visione-primary-dark); + font-family: var(--visione-font-sans); + line-height: 1.2; +} + +p, +li, +td, +th, +label, +small, +.card-text, +.card .card-body .card-text, +.callout p, +.form-text { + color: inherit; + font-family: var(--visione-font-sans) !important; +} + +.lead { + color: var(--visione-text-soft); + font-size: 1.125rem; + line-height: 1.55; +} + +.text-muted, +.text-secondary { + color: var(--visione-text-soft) !important; +} + +.text-dark { + color: var(--visione-text-body) !important; +} + +.text-primary, +.category.text-primary { + color: var(--visione-primary) !important; +} + +.text-success, +.category.text-success { + color: var(--visione-success) !important; +} + +.text-warning { + color: var(--visione-warning) !important; +} + +.text-danger { + color: var(--visione-danger) !important; +} + +.text-info { + color: var(--visione-info) !important; +} + +.display-1 { + font-size: clamp(3rem, 5vw, 4.75rem); + line-height: 1; +} + +.display-3 { + font-size: clamp(2.5rem, 4vw, 3.5rem); + line-height: 1; +} + +.display-6 { + font-size: clamp(1.75rem, 2.4vw, 2.25rem); + line-height: 1.1; +} + +.bg-light { + background-color: var(--visione-home-hero-bg) !important; } html body .navbar .navbar-collapsable .navbar-nav li.nav-item a.nav-link[data-focus-mouse="true"], .navbar .navbar-collapsable .navbar-nav li.nav-item button.nav-link[data-focus-mouse="true"] { border-color: inherit !important -} \ No newline at end of file +} + +.it-hero-wrapper.it-primary, +.it-hero-wrapper.it-primary-bg { + background: var(--visione-primary) !important; + color: #fff; +} + +.it-hero-wrapper.it-primary h1, +.it-hero-wrapper.it-primary p, +.it-hero-wrapper.it-primary-bg h1, +.it-hero-wrapper.it-primary-bg p { + color: #fff !important; +} + +.it-hero-wrapper .container { + min-height: 240px; + display: flex; + align-items: center; +} + +.it-hero-wrapper .container > .row { + width: 100%; + justify-content: center; +} + +.it-hero-wrapper .it-hero-text-wrapper { + max-width: 820px; + margin: 0 auto; + text-align: center; + display: flex; + flex-direction: column; + align-items: center; +} + +.it-hero-wrapper .it-hero-text-wrapper h1, +.it-hero-wrapper .it-hero-text-wrapper p { + width: 100%; +} + +.it-hero-wrapper.bg-light .it-hero-text-wrapper p { + font-size: 1.3rem; +} + +.bg-light h1, +.bg-light h2, +.bg-light h3, +.bg-light h4, +.bg-light h5, +.bg-light h6 { + color: var(--visione-primary-dark) !important; +} + +.bg-light p, +.bg-light .lead, +.bg-light .text-muted, +.bg-light .text-secondary { + color: var(--visione-text-soft) !important; +} + +.icon { + color: currentColor; + fill: currentColor; + flex-shrink: 0; +} + +.icon-primary { + color: var(--visione-primary) !important; + fill: var(--visione-primary) !important; +} + +.icon-success { + color: var(--visione-success) !important; + fill: var(--visione-success) !important; +} + +.icon-warning { + color: var(--visione-warning) !important; + fill: var(--visione-warning) !important; +} + +.icon-danger { + color: var(--visione-danger) !important; + fill: var(--visione-danger) !important; +} + +.icon-info { + color: var(--visione-info) !important; + fill: var(--visione-info) !important; +} + +.btn-primary .icon:not([class*="icon-"]), +.badge[class*="bg-"] .icon:not([class*="icon-"]), +.rounded-circle[class*="bg-"] .icon:not([class*="icon-"]) { + color: #fff; + fill: #fff; +} + +.it-header-wrapper .header-slim-right-zone .btn .rounded-icon, +.it-header-wrapper .header-slim-right-zone .btn .rounded-icon .icon { + +} + +.it-footer, +.it-footer a, +.it-footer h2, +.it-footer h3, +.it-footer h4, +.it-footer .it-brand-text, +.it-footer .it-brand-text h2, +.it-footer .it-brand-text h3, +.it-footer .member-name, +.it-footer .icon { + color: #fff !important; + fill: #fff !important; +} + +@media (max-width: 767.98px) { + .it-hero-wrapper .container { + min-height: 220px; + } + + .it-hero-wrapper .it-hero-text-wrapper { + padding-left: 1rem !important; + padding-right: 1rem !important; + } +} diff --git a/app/components/BIIcon.vue b/app/components/BIIcon.vue index 8ed3248..cda0ac3 100644 --- a/app/components/BIIcon.vue +++ b/app/components/BIIcon.vue @@ -1,9 +1,24 @@ \ No newline at end of file + diff --git a/app/components/Footer.vue b/app/components/Footer.vue index 1ebece1..a1f65a0 100644 --- a/app/components/Footer.vue +++ b/app/components/Footer.vue @@ -50,7 +50,6 @@ const { sortedMembers } = useMembers();
  • Note legali
  • Privacy policy
  • Mappa del sito
  • -
  • Dichiarazione di accessibilità (link esterno su sito AgID)
  • diff --git a/app/components/Header.vue b/app/components/Header.vue index 47dfcea..0d385d9 100644 --- a/app/components/Header.vue +++ b/app/components/Header.vue @@ -48,7 +48,7 @@ const { isAuthenticated, user, logout } = useAuth() {{ user?.first_name }} @@ -56,7 +56,7 @@ const { isAuthenticated, user, logout } = useAuth() @@ -66,7 +66,7 @@ const { isAuthenticated, user, logout } = useAuth() Login @@ -187,4 +187,4 @@ const { isAuthenticated, user, logout } = useAuth() opacity: 1; pointer-events: auto; } - \ No newline at end of file + diff --git a/app/components/dashboard/CitizenDashboard.vue b/app/components/dashboard/CitizenDashboard.vue index acd7bc4..a4386a9 100644 --- a/app/components/dashboard/CitizenDashboard.vue +++ b/app/components/dashboard/CitizenDashboard.vue @@ -245,7 +245,6 @@ const formatDate = (dateString?: string): string => { \ No newline at end of file + diff --git a/app/pages/dashboard/index.vue b/app/pages/dashboard/index.vue index cdff40d..410ff1d 100644 --- a/app/pages/dashboard/index.vue +++ b/app/pages/dashboard/index.vue @@ -39,7 +39,7 @@ const heroSubtitle = computed(() => {
    -
    +

    {{ heroTitle }}

    @@ -71,10 +71,3 @@ const heroSubtitle = computed(() => {

    - - \ No newline at end of file diff --git a/app/pages/index.vue b/app/pages/index.vue index cb74d04..4641d54 100644 --- a/app/pages/index.vue +++ b/app/pages/index.vue @@ -19,10 +19,10 @@ const { data: openDataResponse } = await useAsyncData('recent-fixes', () =>
    -
    +
    -

    Miglioriamo insieme la città

    -

    +

    Miglioriamo insieme la città

    +

    Il portale ufficiale nazionale per segnalare disservizi urbani. Scatta una foto, invia la segnalazione e monitora l'intervento in totale trasparenza.

    @@ -68,7 +68,7 @@ const { data: openDataResponse } = await useAsyncData('recent-fixes', () =>
    -
    +

    I numeri del nostro Comune

    @@ -149,4 +149,4 @@ const { data: openDataResponse } = await useAsyncData('recent-fixes', () =>
    - \ No newline at end of file + diff --git a/app/pages/me.vue b/app/pages/me.vue index 0eb2355..9c03528 100644 --- a/app/pages/me.vue +++ b/app/pages/me.vue @@ -246,14 +246,8 @@ const handleLogout = () => { border-color: #ffc107; } -.display-3 { - font-size: 3.5rem; - line-height: 1; -} - .table-hover tbody tr:hover { background-color: rgba(0, 111, 157, 0.05); } - diff --git a/app/pages/open-data.vue b/app/pages/open-data.vue index 970577c..9b61427 100644 --- a/app/pages/open-data.vue +++ b/app/pages/open-data.vue @@ -47,7 +47,7 @@ const getStatusBadge = (status: string) => {
    -
    +

    Open Data Interventi

    @@ -201,4 +201,4 @@ const getStatusBadge = (status: string) => { transform: translateY(-2px); box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important; } - \ No newline at end of file + diff --git a/app/pages/reports/create.vue b/app/pages/reports/create.vue index 644a762..09b9d6c 100644 --- a/app/pages/reports/create.vue +++ b/app/pages/reports/create.vue @@ -76,7 +76,7 @@ const handleReportSubmit = async (reportData: CreateReportRequest, mediaFiles: F

    -
    +

    Segnala un problema

    @@ -141,9 +141,3 @@ const handleReportSubmit = async (reportData: CreateReportRequest, mediaFiles: F

    - - \ No newline at end of file diff --git a/nuxt.config.ts b/nuxt.config.ts index eb4866c..821c433 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -45,8 +45,8 @@ export default defineNuxtConfig({ }, css: [ - '@/assets/css/style.css', - 'bootstrap-italia/dist/css/bootstrap-italia.min.css' + 'bootstrap-italia/dist/css/bootstrap-italia.min.css', + '@/assets/css/style.css' ], fonts: { @@ -56,4 +56,4 @@ export default defineNuxtConfig({ { name: 'Titillium Web', provider: 'google' } ] } -}) \ No newline at end of file +})