@xiwebdesign/xicms-core 7.30.0 → 8.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/XiCMSProvider.js +22 -7
- package/dist/XiCMSProvider.js.map +1 -1
- package/dist/admin/AdminApp.js +175 -93
- package/dist/admin/AdminApp.js.map +1 -1
- package/dist/admin/AdminHelp.d.ts +1 -1
- package/dist/admin/AdminHelp.js +44 -36
- package/dist/admin/AdminHelp.js.map +1 -1
- package/dist/admin/CoreVersion.d.ts +6 -3
- package/dist/admin/CoreVersion.js +60 -24
- package/dist/admin/CoreVersion.js.map +1 -1
- package/dist/admin/NewsEditor.d.ts +7 -0
- package/dist/admin/NewsEditor.js +117 -75
- package/dist/admin/NewsEditor.js.map +1 -1
- package/dist/admin/SuperadminPanel.js +1 -1
- package/dist/admin/SuperadminPanel.js.map +1 -1
- package/dist/admin/ZoekPalet.d.ts +15 -0
- package/dist/admin/ZoekPalet.js +123 -0
- package/dist/admin/ZoekPalet.js.map +1 -0
- package/dist/admin/blockEditors/GenericEditor.js +36 -18
- package/dist/admin/blockEditors/GenericEditor.js.map +1 -1
- package/dist/admin/blockEditors/StyleEditor.js +37 -3
- package/dist/admin/blockEditors/StyleEditor.js.map +1 -1
- package/dist/admin/blockEditors/SymbolRefEditor.js +44 -2
- package/dist/admin/blockEditors/SymbolRefEditor.js.map +1 -1
- package/dist/admin/blockEditors/index.js +154 -73
- package/dist/admin/blockEditors/index.js.map +1 -1
- package/dist/admin/customBlocks/CustomBlocksPanel.js +18 -7
- package/dist/admin/customBlocks/CustomBlocksPanel.js.map +1 -1
- package/dist/admin/dashboard/DashboardPanel.js +26 -16
- package/dist/admin/dashboard/DashboardPanel.js.map +1 -1
- package/dist/admin/editors/RichTextEditor.d.ts +4 -3
- package/dist/admin/editors/RichTextEditor.js +19 -56
- package/dist/admin/editors/RichTextEditor.js.map +1 -1
- package/dist/admin/editors/fontSizeExtension.js +7 -1
- package/dist/admin/editors/fontSizeExtension.js.map +1 -1
- package/dist/admin/editors/slashMenu.d.ts +18 -0
- package/dist/admin/editors/slashMenu.js +34 -0
- package/dist/admin/editors/slashMenu.js.map +1 -0
- package/dist/admin/editors/useRijkeTekst.d.ts +48 -0
- package/dist/admin/editors/useRijkeTekst.js +310 -0
- package/dist/admin/editors/useRijkeTekst.js.map +1 -0
- package/dist/admin/forms/FormsPanel.d.ts +11 -2
- package/dist/admin/forms/FormsPanel.js +218 -65
- package/dist/admin/forms/FormsPanel.js.map +1 -1
- package/dist/admin/lib/blokInfo.d.ts +17 -0
- package/dist/admin/lib/blokInfo.js +80 -0
- package/dist/admin/lib/blokInfo.js.map +1 -0
- package/dist/admin/lib/foutNaarMens.d.ts +1 -0
- package/dist/admin/lib/foutNaarMens.js +22 -0
- package/dist/admin/lib/foutNaarMens.js.map +1 -0
- package/dist/admin/lib/gewisteVelden.d.ts +13 -0
- package/dist/admin/lib/gewisteVelden.js +31 -0
- package/dist/admin/lib/gewisteVelden.js.map +1 -0
- package/dist/admin/lib/heroHulp.d.ts +11 -0
- package/dist/admin/lib/heroHulp.js +18 -0
- package/dist/admin/lib/heroHulp.js.map +1 -0
- package/dist/admin/lib/kleur.js +2 -3
- package/dist/admin/lib/kleur.js.map +1 -1
- package/dist/admin/lib/leesbaarheid.d.ts +34 -0
- package/dist/admin/lib/leesbaarheid.js +82 -0
- package/dist/admin/lib/leesbaarheid.js.map +1 -0
- package/dist/admin/lib/lengteAdvies.d.ts +1 -0
- package/dist/admin/lib/lengteAdvies.js +16 -0
- package/dist/admin/lib/lengteAdvies.js.map +1 -0
- package/dist/admin/lib/mediaLijst.d.ts +26 -0
- package/dist/admin/lib/mediaLijst.js +42 -0
- package/dist/admin/lib/mediaLijst.js.map +1 -0
- package/dist/admin/lib/mediaUsage.d.ts +12 -1
- package/dist/admin/lib/mediaUsage.js +43 -33
- package/dist/admin/lib/mediaUsage.js.map +1 -1
- package/dist/admin/lib/menuHulp.d.ts +16 -0
- package/dist/admin/lib/menuHulp.js +41 -0
- package/dist/admin/lib/menuHulp.js.map +1 -0
- package/dist/admin/lib/onopgeslagen.d.ts +10 -0
- package/dist/admin/lib/onopgeslagen.js +35 -0
- package/dist/admin/lib/onopgeslagen.js.map +1 -0
- package/dist/admin/lib/pagesClient.d.ts +55 -2
- package/dist/admin/lib/pagesClient.js +126 -28
- package/dist/admin/lib/pagesClient.js.map +1 -1
- package/dist/admin/lib/paginaGebruik.d.ts +56 -0
- package/dist/admin/lib/paginaGebruik.js +109 -0
- package/dist/admin/lib/paginaGebruik.js.map +1 -0
- package/dist/admin/lib/publicatieCheck.d.ts +25 -0
- package/dist/admin/lib/publicatieCheck.js +114 -0
- package/dist/admin/lib/publicatieCheck.js.map +1 -0
- package/dist/admin/lib/scrollNaarDetail.d.ts +6 -0
- package/dist/admin/lib/scrollNaarDetail.js +20 -0
- package/dist/admin/lib/scrollNaarDetail.js.map +1 -0
- package/dist/admin/lib/symbolsClient.d.ts +10 -0
- package/dist/admin/lib/symbolsClient.js +14 -1
- package/dist/admin/lib/symbolsClient.js.map +1 -1
- package/dist/admin/lib/tekstVeld.d.ts +8 -0
- package/dist/admin/lib/tekstVeld.js +10 -0
- package/dist/admin/lib/tekstVeld.js.map +1 -0
- package/dist/admin/lib/useIsSuperadmin.d.ts +2 -0
- package/dist/admin/lib/useIsSuperadmin.js +13 -0
- package/dist/admin/lib/useIsSuperadmin.js.map +1 -0
- package/dist/admin/lib/veldTaal.d.ts +14 -0
- package/dist/admin/lib/veldTaal.js +247 -0
- package/dist/admin/lib/veldTaal.js.map +1 -0
- package/dist/admin/lib/versieVergelijk.d.ts +17 -0
- package/dist/admin/lib/versieVergelijk.js +24 -0
- package/dist/admin/lib/versieVergelijk.js.map +1 -0
- package/dist/admin/lib/zodFields.js +22 -4
- package/dist/admin/lib/zodFields.js.map +1 -1
- package/dist/admin/lib/zodFout.d.ts +9 -0
- package/dist/admin/lib/zodFout.js +63 -0
- package/dist/admin/lib/zodFout.js.map +1 -0
- package/dist/admin/media/MediaManager.js +162 -32
- package/dist/admin/media/MediaManager.js.map +1 -1
- package/dist/admin/media/MediaPicker.d.ts +3 -0
- package/dist/admin/media/MediaPicker.js +84 -31
- package/dist/admin/media/MediaPicker.js.map +1 -1
- package/dist/admin/menu/MenuPanel.js +144 -83
- package/dist/admin/menu/MenuPanel.js.map +1 -1
- package/dist/admin/navContext.d.ts +3 -0
- package/dist/admin/navContext.js +13 -1
- package/dist/admin/navContext.js.map +1 -1
- package/dist/admin/pages/PageEditor.js +146 -30
- package/dist/admin/pages/PageEditor.js.map +1 -1
- package/dist/admin/pages/PagesPanel.js +215 -61
- package/dist/admin/pages/PagesPanel.js.map +1 -1
- package/dist/admin/pages/StarterKiezer.d.ts +12 -0
- package/dist/admin/pages/StarterKiezer.js +113 -0
- package/dist/admin/pages/StarterKiezer.js.map +1 -0
- package/dist/admin/panelRegistry.d.ts +1 -1
- package/dist/admin/panelRegistry.js +2 -1
- package/dist/admin/panelRegistry.js.map +1 -1
- package/dist/admin/patterns/PatternInserter.js +1 -1
- package/dist/admin/patterns/PatternInserter.js.map +1 -1
- package/dist/admin/settings/BedrijfInstellingen.d.ts +20 -0
- package/dist/admin/settings/BedrijfInstellingen.js +144 -0
- package/dist/admin/settings/BedrijfInstellingen.js.map +1 -0
- package/dist/admin/settings/MailSettings.js +2 -2
- package/dist/admin/settings/MailSettings.js.map +1 -1
- package/dist/admin/settings/MailTemplates.js +5 -4
- package/dist/admin/settings/MailTemplates.js.map +1 -1
- package/dist/admin/settings/SettingsPanel.js +120 -78
- package/dist/admin/settings/SettingsPanel.js.map +1 -1
- package/dist/admin/settings/SnapshotsCard.js +4 -4
- package/dist/admin/settings/SnapshotsCard.js.map +1 -1
- package/dist/admin/settings/VorigeTerugzetten.d.ts +15 -0
- package/dist/admin/settings/VorigeTerugzetten.js +89 -0
- package/dist/admin/settings/VorigeTerugzetten.js.map +1 -0
- package/dist/admin/shop/CategoriesTab.js +6 -4
- package/dist/admin/shop/CategoriesTab.js.map +1 -1
- package/dist/admin/shop/DiscountsTab.js +4 -2
- package/dist/admin/shop/DiscountsTab.js.map +1 -1
- package/dist/admin/shop/OrdersTab.js +57 -19
- package/dist/admin/shop/OrdersTab.js.map +1 -1
- package/dist/admin/shop/ProductPaneel.js +2 -1
- package/dist/admin/shop/ProductPaneel.js.map +1 -1
- package/dist/admin/shop/ProductsTab.js +40 -19
- package/dist/admin/shop/ProductsTab.js.map +1 -1
- package/dist/admin/shop/ShopPanel.js +13 -1
- package/dist/admin/shop/ShopPanel.js.map +1 -1
- package/dist/admin/shop/ShopSettingsTab.js +27 -1
- package/dist/admin/shop/ShopSettingsTab.js.map +1 -1
- package/dist/admin/shop/productClient.js +7 -3
- package/dist/admin/shop/productClient.js.map +1 -1
- package/dist/admin/stats/NietGevonden.d.ts +10 -0
- package/dist/admin/stats/NietGevonden.js +78 -0
- package/dist/admin/stats/NietGevonden.js.map +1 -0
- package/dist/admin/stats/StatsPanel.js +6 -1
- package/dist/admin/stats/StatsPanel.js.map +1 -1
- package/dist/admin/stats/lib.d.ts +2 -0
- package/dist/admin/stats/lib.js.map +1 -1
- package/dist/admin/ui/ConfirmDialog.js +10 -1
- package/dist/admin/ui/ConfirmDialog.js.map +1 -1
- package/dist/admin/ui/Icon.d.ts +34 -0
- package/dist/admin/ui/Icon.js +44 -0
- package/dist/admin/ui/Icon.js.map +1 -0
- package/dist/admin/ui/ImageField.d.ts +15 -0
- package/dist/admin/ui/ImageField.js +67 -0
- package/dist/admin/ui/ImageField.js.map +1 -0
- package/dist/admin/ui/KleurVeld.d.ts +25 -0
- package/dist/admin/ui/KleurVeld.js +76 -0
- package/dist/admin/ui/KleurVeld.js.map +1 -0
- package/dist/admin/ui/LaadStaat.d.ts +21 -0
- package/dist/admin/ui/LaadStaat.js +43 -0
- package/dist/admin/ui/LaadStaat.js.map +1 -0
- package/dist/admin/ui/LeesbaarheidPaneel.d.ts +10 -0
- package/dist/admin/ui/LeesbaarheidPaneel.js +68 -0
- package/dist/admin/ui/LeesbaarheidPaneel.js.map +1 -0
- package/dist/admin/ui/LinkDialog.d.ts +22 -0
- package/dist/admin/ui/LinkDialog.js +131 -0
- package/dist/admin/ui/LinkDialog.js.map +1 -0
- package/dist/admin/ui/LinkVeld.d.ts +14 -0
- package/dist/admin/ui/LinkVeld.js +49 -0
- package/dist/admin/ui/LinkVeld.js.map +1 -0
- package/dist/admin/ui/PreviewLinkResultaat.d.ts +14 -0
- package/dist/admin/ui/PreviewLinkResultaat.js +52 -0
- package/dist/admin/ui/PreviewLinkResultaat.js.map +1 -0
- package/dist/admin/ui/charts.js +5 -5
- package/dist/admin/ui/charts.js.map +1 -1
- package/dist/admin/ui/primitives.d.ts +16 -6
- package/dist/admin/ui/primitives.js +98 -26
- package/dist/admin/ui/primitives.js.map +1 -1
- package/dist/admin/ui/select.js +5 -2
- package/dist/admin/ui/select.js.map +1 -1
- package/dist/admin/ui/switch.d.ts +3 -1
- package/dist/admin/ui/switch.js +6 -3
- package/dist/admin/ui/switch.js.map +1 -1
- package/dist/admin/ui/toast.d.ts +2 -1
- package/dist/admin/ui/toast.js +17 -11
- package/dist/admin/ui/toast.js.map +1 -1
- package/dist/admin/visual/BlokKiezer.d.ts +34 -0
- package/dist/admin/visual/BlokKiezer.js +225 -0
- package/dist/admin/visual/BlokKiezer.js.map +1 -0
- package/dist/admin/visual/InlineGereedschap.d.ts +52 -0
- package/dist/admin/visual/InlineGereedschap.js +356 -0
- package/dist/admin/visual/InlineGereedschap.js.map +1 -0
- package/dist/admin/visual/InlineRijkeTekst.d.ts +23 -0
- package/dist/admin/visual/InlineRijkeTekst.js +152 -0
- package/dist/admin/visual/InlineRijkeTekst.js.map +1 -0
- package/dist/admin/visual/VisualEditor.js +273 -125
- package/dist/admin/visual/VisualEditor.js.map +1 -1
- package/dist/admin.css +1 -1
- package/dist/bedrijf/bedrijf.d.ts +36 -0
- package/dist/bedrijf/bedrijf.js +110 -0
- package/dist/bedrijf/bedrijf.js.map +1 -0
- package/dist/blocks/BlockRenderer.js +11 -1
- package/dist/blocks/BlockRenderer.js.map +1 -1
- package/dist/blocks/blockStyle.d.ts +7 -0
- package/dist/blocks/blockStyle.js +16 -3
- package/dist/blocks/blockStyle.js.map +1 -1
- package/dist/blocks/builtinSchemas.js +6 -0
- package/dist/blocks/builtinSchemas.js.map +1 -1
- package/dist/blocks/builtins/AgendaRender.d.ts +22 -0
- package/dist/blocks/builtins/AgendaRender.js +69 -9
- package/dist/blocks/builtins/AgendaRender.js.map +1 -1
- package/dist/blocks/builtins/Availability.d.ts +1 -0
- package/dist/blocks/builtins/Availability.js +23 -0
- package/dist/blocks/builtins/Availability.js.map +1 -0
- package/dist/blocks/builtins/AvailabilityRender.d.ts +12 -0
- package/dist/blocks/builtins/AvailabilityRender.js +105 -0
- package/dist/blocks/builtins/AvailabilityRender.js.map +1 -0
- package/dist/blocks/builtins/BeforeAfterRender.js +4 -3
- package/dist/blocks/builtins/BeforeAfterRender.js.map +1 -1
- package/dist/blocks/builtins/Booking.js +1 -1
- package/dist/blocks/builtins/Booking.js.map +1 -1
- package/dist/blocks/builtins/BreadcrumbsRender.d.ts +4 -3
- package/dist/blocks/builtins/BreadcrumbsRender.js +14 -8
- package/dist/blocks/builtins/BreadcrumbsRender.js.map +1 -1
- package/dist/blocks/builtins/ColumnsRender.d.ts +1 -1
- package/dist/blocks/builtins/ColumnsRender.js +3 -1
- package/dist/blocks/builtins/ColumnsRender.js.map +1 -1
- package/dist/blocks/builtins/Contact.js +1 -1
- package/dist/blocks/builtins/Contact.js.map +1 -1
- package/dist/blocks/builtins/ContactRender.d.ts +1 -1
- package/dist/blocks/builtins/ContactRender.js +29 -8
- package/dist/blocks/builtins/ContactRender.js.map +1 -1
- package/dist/blocks/builtins/Cta.js +1 -1
- package/dist/blocks/builtins/Cta.js.map +1 -1
- package/dist/blocks/builtins/CtaRender.d.ts +1 -1
- package/dist/blocks/builtins/CtaRender.js +5 -4
- package/dist/blocks/builtins/CtaRender.js.map +1 -1
- package/dist/blocks/builtins/Embed.js +1 -1
- package/dist/blocks/builtins/Embed.js.map +1 -1
- package/dist/blocks/builtins/FormBlock.js +1 -0
- package/dist/blocks/builtins/FormBlock.js.map +1 -1
- package/dist/blocks/builtins/FormBlockRender.d.ts +6 -0
- package/dist/blocks/builtins/FormBlockRender.js +88 -16
- package/dist/blocks/builtins/FormBlockRender.js.map +1 -1
- package/dist/blocks/builtins/GalleryRender.js +3 -2
- package/dist/blocks/builtins/GalleryRender.js.map +1 -1
- package/dist/blocks/builtins/Hero.js +1 -1
- package/dist/blocks/builtins/Hero.js.map +1 -1
- package/dist/blocks/builtins/HeroRender.js +7 -3
- package/dist/blocks/builtins/HeroRender.js.map +1 -1
- package/dist/blocks/builtins/OpenNowBadge.d.ts +4 -2
- package/dist/blocks/builtins/OpenNowBadge.js +6 -6
- package/dist/blocks/builtins/OpenNowBadge.js.map +1 -1
- package/dist/blocks/builtins/OpeningHoursRender.d.ts +8 -2
- package/dist/blocks/builtins/OpeningHoursRender.js +27 -6
- package/dist/blocks/builtins/OpeningHoursRender.js.map +1 -1
- package/dist/blocks/builtins/PriceList.d.ts +1 -0
- package/dist/blocks/builtins/PriceList.js +25 -0
- package/dist/blocks/builtins/PriceList.js.map +1 -0
- package/dist/blocks/builtins/PriceListRender.d.ts +17 -0
- package/dist/blocks/builtins/PriceListRender.js +87 -0
- package/dist/blocks/builtins/PriceListRender.js.map +1 -0
- package/dist/blocks/builtins/RichTextBlockRender.js +6 -1
- package/dist/blocks/builtins/RichTextBlockRender.js.map +1 -1
- package/dist/blocks/builtins/SectionHeading.d.ts +1 -0
- package/dist/blocks/builtins/SectionHeading.js +14 -0
- package/dist/blocks/builtins/SectionHeading.js.map +1 -0
- package/dist/blocks/builtins/SectionHeadingRender.d.ts +7 -0
- package/dist/blocks/builtins/SectionHeadingRender.js +14 -0
- package/dist/blocks/builtins/SectionHeadingRender.js.map +1 -0
- package/dist/blocks/builtins/SliderRender.js +3 -2
- package/dist/blocks/builtins/SliderRender.js.map +1 -1
- package/dist/blocks/builtins/SymbolRef.js +1 -1
- package/dist/blocks/builtins/SymbolRef.js.map +1 -1
- package/dist/blocks/builtins/TeamRender.js +6 -1
- package/dist/blocks/builtins/TeamRender.js.map +1 -1
- package/dist/blocks/builtins/Testimonials.js +3 -1
- package/dist/blocks/builtins/Testimonials.js.map +1 -1
- package/dist/blocks/builtins/TestimonialsRender.js +4 -0
- package/dist/blocks/builtins/TestimonialsRender.js.map +1 -1
- package/dist/blocks/builtins/WhatsappChatRender.d.ts +1 -1
- package/dist/blocks/builtins/WhatsappChatRender.js +1 -1
- package/dist/blocks/builtins/WhatsappChatRender.js.map +1 -1
- package/dist/blocks/builtins/Widgets.js +2 -2
- package/dist/blocks/builtins/Widgets.js.map +1 -1
- package/dist/blocks/builtins/WidgetsRender.js +3 -1
- package/dist/blocks/builtins/WidgetsRender.js.map +1 -1
- package/dist/blocks/builtins/index.d.ts +3 -0
- package/dist/blocks/builtins/index.js +6 -0
- package/dist/blocks/builtins/index.js.map +1 -1
- package/dist/blocks/builtins/lib/autoComplete.d.ts +7 -0
- package/dist/blocks/builtins/lib/autoComplete.js +20 -0
- package/dist/blocks/builtins/lib/autoComplete.js.map +1 -0
- package/dist/blocks/builtins/lib/bookingUrl.d.ts +2 -2
- package/dist/blocks/builtins/lib/bookingUrl.js +1 -1
- package/dist/blocks/builtins/lib/bookingUrl.js.map +1 -1
- package/dist/blocks/builtins/lib/ical.d.ts +24 -0
- package/dist/blocks/builtins/lib/ical.js +82 -0
- package/dist/blocks/builtins/lib/ical.js.map +1 -0
- package/dist/blocks/builtins/lib/vandaag.d.ts +8 -0
- package/dist/blocks/builtins/lib/vandaag.js +22 -0
- package/dist/blocks/builtins/lib/vandaag.js.map +1 -0
- package/dist/blocks/registry.d.ts +6 -0
- package/dist/blocks/registry.js.map +1 -1
- package/dist/blocks/ui/index.js +1 -0
- package/dist/blocks/ui/index.js.map +1 -1
- package/dist/components/EditBar.js +2 -4
- package/dist/components/EditBar.js.map +1 -1
- package/dist/components/News.js +26 -18
- package/dist/components/News.js.map +1 -1
- package/dist/components/PageView.d.ts +7 -1
- package/dist/components/PageView.js +17 -0
- package/dist/components/PageView.js.map +1 -1
- package/dist/components/ResponsiveImage.js +18 -20
- package/dist/components/ResponsiveImage.js.map +1 -1
- package/dist/components/site/SiteFooter.d.ts +6 -1
- package/dist/components/site/SiteFooter.js +61 -9
- package/dist/components/site/SiteFooter.js.map +1 -1
- package/dist/components/site/SiteHeader.d.ts +15 -0
- package/dist/components/site/SiteHeader.js +70 -0
- package/dist/components/site/SiteHeader.js.map +1 -0
- package/dist/components/site/SiteNav.d.ts +2 -0
- package/dist/components/site/SiteNav.js +29 -5
- package/dist/components/site/SiteNav.js.map +1 -1
- package/dist/demo/DemoStudio.js +2 -2
- package/dist/demo/DemoStudio.js.map +1 -1
- package/dist/demo/demoStore.d.ts +13 -0
- package/dist/demo/demoStore.js +36 -0
- package/dist/demo/demoStore.js.map +1 -1
- package/dist/editor/EditorProvider.js +15 -4
- package/dist/editor/EditorProvider.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +16 -1
- package/dist/index.js.map +1 -1
- package/dist/media/ImageContext.d.ts +17 -0
- package/dist/media/ImageContext.js +65 -20
- package/dist/media/ImageContext.js.map +1 -1
- package/dist/media/altInHtml.d.ts +9 -0
- package/dist/media/altInHtml.js +17 -0
- package/dist/media/altInHtml.js.map +1 -0
- package/dist/media/srcset.d.ts +12 -0
- package/dist/media/srcset.js +13 -0
- package/dist/media/srcset.js.map +1 -0
- package/dist/modules/builtins.d.ts +1 -0
- package/dist/modules/builtins.js +16 -3
- package/dist/modules/builtins.js.map +1 -1
- package/dist/modules/shop/blocks/Cart.js +5 -3
- package/dist/modules/shop/blocks/Cart.js.map +1 -1
- package/dist/modules/shop/blocks/Checkout.js +56 -35
- package/dist/modules/shop/blocks/Checkout.js.map +1 -1
- package/dist/modules/shop/blocks/Donation.js +4 -4
- package/dist/modules/shop/blocks/Donation.js.map +1 -1
- package/dist/modules/shop/blocks/ProductDetail.js +19 -3
- package/dist/modules/shop/blocks/ProductDetail.js.map +1 -1
- package/dist/modules/shop/blocks/ProductGrid.d.ts +3 -1
- package/dist/modules/shop/blocks/ProductGrid.js +8 -4
- package/dist/modules/shop/blocks/ProductGrid.js.map +1 -1
- package/dist/modules/shop/blocks/ShopCategories.js +4 -3
- package/dist/modules/shop/blocks/ShopCategories.js.map +1 -1
- package/dist/modules/shop/lib.d.ts +4 -0
- package/dist/modules/shop/lib.js +14 -0
- package/dist/modules/shop/lib.js.map +1 -1
- package/dist/modules/shop/settings.d.ts +3 -0
- package/dist/modules/shop/settings.js +14 -0
- package/dist/modules/shop/settings.js.map +1 -1
- package/dist/modules/shop/strings.d.ts +4 -0
- package/dist/modules/shop/strings.js +8 -0
- package/dist/modules/shop/strings.js.map +1 -1
- package/dist/next/envCheck.d.ts +42 -0
- package/dist/next/envCheck.js +106 -0
- package/dist/next/envCheck.js.map +1 -0
- package/dist/next/index.cjs +185 -2
- package/dist/next/index.d.ts +2 -0
- package/dist/next/index.js +8 -1
- package/dist/next/index.js.map +1 -1
- package/dist/next/securityHeaders.d.ts +36 -0
- package/dist/next/securityHeaders.js +74 -0
- package/dist/next/securityHeaders.js.map +1 -0
- package/dist/patterns/builtins.d.ts +7 -0
- package/dist/patterns/builtins.js +138 -3
- package/dist/patterns/builtins.js.map +1 -1
- package/dist/releaseNotes.js +140 -0
- package/dist/releaseNotes.js.map +1 -1
- package/dist/render/PublishedPage.d.ts +2 -1
- package/dist/render/PublishedPage.js +10 -4
- package/dist/render/PublishedPage.js.map +1 -1
- package/dist/schema/blocks.d.ts +470 -0
- package/dist/schema/blocks.js +102 -4
- package/dist/schema/blocks.js.map +1 -1
- package/dist/schema/business.d.ts +117 -0
- package/dist/schema/business.js +73 -0
- package/dist/schema/business.js.map +1 -0
- package/dist/schema/fields.d.ts +2 -1
- package/dist/schema/fields.js.map +1 -1
- package/dist/schema/forms.d.ts +18 -0
- package/dist/schema/forms.js +18 -3
- package/dist/schema/forms.js.map +1 -1
- package/dist/schema/mail.d.ts +10 -0
- package/dist/schema/mail.js +7 -0
- package/dist/schema/mail.js.map +1 -1
- package/dist/schema/settings.d.ts +101 -0
- package/dist/schema/settings.js +24 -3
- package/dist/schema/settings.js.map +1 -1
- package/dist/schema/shop.d.ts +2 -0
- package/dist/schema/shop.js +4 -0
- package/dist/schema/shop.js.map +1 -1
- package/dist/schema/shopGeld.d.ts +1 -0
- package/dist/schema/shopGeld.js +1 -0
- package/dist/schema/shopGeld.js.map +1 -1
- package/dist/schema/siteConfig.d.ts +68 -1
- package/dist/schema/siteConfig.js +7 -2
- package/dist/schema/siteConfig.js.map +1 -1
- package/dist/server/blockData.d.ts +1 -1
- package/dist/server/blockData.js +74 -18
- package/dist/server/blockData.js.map +1 -1
- package/dist/server/cspRapport.d.ts +20 -0
- package/dist/server/cspRapport.js +56 -0
- package/dist/server/cspRapport.js.map +1 -0
- package/dist/server/fonts.d.ts +3 -0
- package/dist/server/fonts.js +39 -0
- package/dist/server/fonts.js.map +1 -0
- package/dist/server/index.d.ts +3 -0
- package/dist/server/index.js +8 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/sanitize.js +15 -2
- package/dist/server/sanitize.js.map +1 -1
- package/dist/settings/useSiteSettings.js +4 -1
- package/dist/settings/useSiteSettings.js.map +1 -1
- package/dist/starters/starters.d.ts +69 -0
- package/dist/starters/starters.js +171 -0
- package/dist/starters/starters.js.map +1 -0
- package/dist/styles.css +1149 -208
- package/dist/theme/color.d.ts +10 -0
- package/dist/theme/color.js +17 -1
- package/dist/theme/color.js.map +1 -1
- package/dist/theme/fontFallback.d.ts +23 -0
- package/dist/theme/fontFallback.js +58 -0
- package/dist/theme/fontFallback.js.map +1 -0
- package/dist/theme/fonts.d.ts +11 -0
- package/dist/theme/fonts.js +16 -0
- package/dist/theme/fonts.js.map +1 -0
- package/dist/version.js +1 -1
- package/package.json +6 -4
package/dist/styles.css
CHANGED
|
@@ -250,9 +250,7 @@
|
|
|
250
250
|
.xicms-ve__shell {
|
|
251
251
|
display: contents;
|
|
252
252
|
}
|
|
253
|
-
|
|
254
|
-
font-size: 0.95rem;
|
|
255
|
-
}
|
|
253
|
+
|
|
256
254
|
.xicms-ve__path {
|
|
257
255
|
font-size: 0.8rem;
|
|
258
256
|
opacity: 0.7;
|
|
@@ -278,6 +276,8 @@
|
|
|
278
276
|
}
|
|
279
277
|
.xicms-ve__histbtn {
|
|
280
278
|
appearance: none;
|
|
279
|
+
display: inline-grid;
|
|
280
|
+
place-items: center;
|
|
281
281
|
border: 1px solid rgba(255, 255, 255, 0.25);
|
|
282
282
|
border-radius: 6px;
|
|
283
283
|
background: transparent;
|
|
@@ -330,15 +330,7 @@
|
|
|
330
330
|
onvindbaar. Het paneel positioneert zichzelf nu als vaste lade (hieronder). */
|
|
331
331
|
display: contents;
|
|
332
332
|
}
|
|
333
|
-
|
|
334
|
-
overflow: auto;
|
|
335
|
-
padding: 1.5rem;
|
|
336
|
-
background: #fff;
|
|
337
|
-
background-image:
|
|
338
|
-
linear-gradient(rgba(0, 0, 0, 0.03) 1px, transparent 1px),
|
|
339
|
-
linear-gradient(90deg, rgba(0, 0, 0, 0.03) 1px, transparent 1px);
|
|
340
|
-
background-size: 24px 24px;
|
|
341
|
-
}
|
|
333
|
+
|
|
342
334
|
.xicms-ve__panel {
|
|
343
335
|
overflow-x: hidden; /* een net-te-breed veld mag de lade niet horizontaal laten scrollen */
|
|
344
336
|
/* Vaste lade rechts, van onder de editorbalk tot aan de demo-balk (of de schermrand).
|
|
@@ -354,7 +346,7 @@
|
|
|
354
346
|
/* Boven de blokknoppen en potloodjes (10004-10005): die horen bij de pagina en moeten onder
|
|
355
347
|
de lade doorlopen, niet er bovenop zweven. */
|
|
356
348
|
z-index: 10007;
|
|
357
|
-
box-shadow: -12px 0 32px rgba(
|
|
349
|
+
box-shadow: -12px 0 32px rgba(28, 25, 23, 0.18);
|
|
358
350
|
overflow: auto;
|
|
359
351
|
border-left: 1px solid var(--color-border, #e2e8f0);
|
|
360
352
|
background: var(--color-background-card, #fff);
|
|
@@ -393,9 +385,6 @@
|
|
|
393
385
|
font-size: 0.9rem;
|
|
394
386
|
color: var(--color-text-secondary, #475569);
|
|
395
387
|
}
|
|
396
|
-
.xicms-ve__inserter-select {
|
|
397
|
-
width: 16rem;
|
|
398
|
-
}
|
|
399
388
|
|
|
400
389
|
/* Responsief: op telefoon/smal tablet stackt de editor (canvas boven, instellingen als onderpaneel)
|
|
401
390
|
en wrappen de balk en de toevoeg-rij, zodat inline bewerken ook op kleine schermen werkt. */
|
|
@@ -409,9 +398,7 @@
|
|
|
409
398
|
order: 3;
|
|
410
399
|
flex-basis: 100%;
|
|
411
400
|
}
|
|
412
|
-
|
|
413
|
-
padding: 1rem;
|
|
414
|
-
}
|
|
401
|
+
|
|
415
402
|
/* Zolang de onder-lade open is heeft de publiceerknop geen plek: hij lag er qua z-index
|
|
416
403
|
ónder (onklikbaar) en erboven zou hij het formulier afdekken. De lade heeft zijn eigen
|
|
417
404
|
✓ Opgeslagen/✕ Sluiten; publiceren doe je daarna — de knop komt terug zodra de lade sluit. */
|
|
@@ -425,82 +412,31 @@
|
|
|
425
412
|
left: 0;
|
|
426
413
|
right: 0;
|
|
427
414
|
width: auto;
|
|
428
|
-
max-height:
|
|
415
|
+
max-height: 70vh;
|
|
429
416
|
border-left: 0;
|
|
430
|
-
|
|
431
|
-
|
|
417
|
+
/* 8.11: een echte "bottom sheet": afgeronde bovenkant en een greep, zoals op een telefoon
|
|
418
|
+
gebruikelijk — geen kale grijze streep. */
|
|
419
|
+
border-top: 0;
|
|
420
|
+
border-radius: 16px 16px 0 0;
|
|
421
|
+
padding-top: 1.4rem;
|
|
422
|
+
box-shadow: 0 -12px 40px rgba(28, 25, 23, 0.22);
|
|
423
|
+
}
|
|
424
|
+
.xicms-ve__panel::before {
|
|
425
|
+
content: "";
|
|
426
|
+
position: sticky;
|
|
427
|
+
top: -0.9rem;
|
|
428
|
+
display: block;
|
|
429
|
+
width: 40px;
|
|
430
|
+
height: 4px;
|
|
431
|
+
margin: -0.9rem auto 0.5rem;
|
|
432
|
+
border-radius: 999px;
|
|
433
|
+
background: color-mix(in srgb, currentColor 22%, transparent);
|
|
432
434
|
}
|
|
433
435
|
.xicms-ve__inserter {
|
|
434
436
|
flex-wrap: wrap;
|
|
435
437
|
}
|
|
436
|
-
/* Touch-raakdoelen: de blok-toolbarknoppen (✏️ ↑ ↓ ⎘ 🗑) waren op een telefoon te klein om
|
|
437
|
-
betrouwbaar te raken (WCAG raakdoel ≥ 44px op mobiel). */
|
|
438
|
-
.xicms-ve-block__toolbar button {
|
|
439
|
-
min-width: 40px;
|
|
440
|
-
min-height: 40px;
|
|
441
|
-
font-size: 1rem;
|
|
442
|
-
}
|
|
443
|
-
.xicms-ve__inserter-select {
|
|
444
|
-
width: 100%;
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
/* Blok-frame in het canvas */
|
|
448
|
-
.xicms-ve-block {
|
|
449
|
-
position: relative;
|
|
450
|
-
outline: 2px solid transparent;
|
|
451
|
-
outline-offset: 2px;
|
|
452
|
-
border-radius: 4px;
|
|
453
|
-
transition: outline-color 0.12s;
|
|
454
|
-
}
|
|
455
|
-
.xicms-ve-block:hover {
|
|
456
|
-
outline-color: rgba(79, 70, 229, 0.35);
|
|
457
|
-
}
|
|
458
|
-
.xicms-ve-block.is-selected {
|
|
459
|
-
outline-color: var(--xicms-primary, #4f46e5);
|
|
460
|
-
}
|
|
461
|
-
.xicms-ve-block__select {
|
|
462
|
-
position: absolute;
|
|
463
|
-
inset: 0;
|
|
464
|
-
z-index: 1;
|
|
465
|
-
background: transparent;
|
|
466
|
-
border: 0;
|
|
467
|
-
cursor: pointer;
|
|
468
|
-
}
|
|
469
|
-
.xicms-ve-block.is-selected .xicms-ve-block__select {
|
|
470
|
-
/* Geselecteerd: laat interactie met de inhoud toe (de editor staat in het zijpaneel). */
|
|
471
|
-
pointer-events: none;
|
|
472
|
-
}
|
|
473
|
-
.xicms-ve-block__content {
|
|
474
|
-
position: relative;
|
|
475
|
-
}
|
|
476
|
-
/* Drag-and-drop herordenen: greep + invoeg-indicator. */
|
|
477
|
-
.xicms-ve-block__drag {
|
|
478
|
-
cursor: grab;
|
|
479
|
-
letter-spacing: -2px;
|
|
480
|
-
}
|
|
481
|
-
.xicms-ve-block__drag:active {
|
|
482
|
-
cursor: grabbing;
|
|
483
|
-
}
|
|
484
|
-
.xicms-ve-block.is-dragging {
|
|
485
|
-
opacity: 0.45;
|
|
486
|
-
}
|
|
487
|
-
.xicms-ve-block.is-drop-before::before,
|
|
488
|
-
.xicms-ve-block.is-drop-after::after {
|
|
489
|
-
content: "";
|
|
490
|
-
position: absolute;
|
|
491
|
-
left: 0;
|
|
492
|
-
right: 0;
|
|
493
|
-
height: 3px;
|
|
494
|
-
border-radius: 2px;
|
|
495
|
-
background: var(--xicms-primary, #4f46e5);
|
|
496
|
-
z-index: 4;
|
|
497
|
-
}
|
|
498
|
-
.xicms-ve-block.is-drop-before::before {
|
|
499
|
-
top: -6px;
|
|
500
|
-
}
|
|
501
|
-
.xicms-ve-block.is-drop-after::after {
|
|
502
|
-
bottom: -6px;
|
|
503
438
|
}
|
|
439
|
+
|
|
504
440
|
/* Inline (in-canvas) bewerkbaar tekstveld in de visuele editor.
|
|
505
441
|
In rust bewust ONZICHTBAAR: het blok zou anders als een formulier vol stippellijnen lezen, en
|
|
506
442
|
dan zie je de pagina niet meer. Het potloodje ernaast wijst het veld aan; de omlijning verschijnt
|
|
@@ -513,14 +449,14 @@
|
|
|
513
449
|
}
|
|
514
450
|
.xicms-ve-inline:hover,
|
|
515
451
|
.xicms-ve-inline.is-hover {
|
|
516
|
-
outline-color: rgba(79, 70, 229, 0.45);
|
|
517
|
-
background: rgba(79, 70, 229, 0.05);
|
|
452
|
+
outline-color: rgba(var(--xicms-tool-accent-rgb, 79, 70, 229), 0.45);
|
|
453
|
+
background: rgba(var(--xicms-tool-accent-rgb, 79, 70, 229), 0.05);
|
|
518
454
|
}
|
|
519
455
|
.xicms-ve-inline.is-editing {
|
|
520
456
|
cursor: text;
|
|
521
457
|
outline: 2px solid var(--xicms-primary, #4f46e5);
|
|
522
458
|
outline-offset: 3px;
|
|
523
|
-
background: rgba(79, 70, 229, 0.06);
|
|
459
|
+
background: rgba(var(--xicms-tool-accent-rgb, 79, 70, 229), 0.06);
|
|
524
460
|
}
|
|
525
461
|
/* Het potlood: de bewuste stap tussen "dit kán" en "ik bewerk het nu". Zo licht mogelijk — geen
|
|
526
462
|
rand, geen schaduw, geen wit schijfje: een blok met tien velden moet geen kerstboom worden.
|
|
@@ -538,7 +474,7 @@
|
|
|
538
474
|
/* Het canvas toont de site van de klant: die kan wit zijn of een donkere foto. Eén vaste kleur
|
|
539
475
|
verdwijnt dus altijd ergens. Een donker, halfdoorzichtig schijfje met een wit potlood houdt
|
|
540
476
|
zich op allebei staande — licht genoeg om niet op te dringen, donker genoeg om te zien. */
|
|
541
|
-
background: rgba(
|
|
477
|
+
background: rgba(28, 25, 23, 0.4);
|
|
542
478
|
color: #fff;
|
|
543
479
|
cursor: pointer;
|
|
544
480
|
opacity: 0.5;
|
|
@@ -550,10 +486,10 @@
|
|
|
550
486
|
/* Donker blijven, niet de merkkleur: `--xicms-primary` is van de klant en kan licht zijn
|
|
551
487
|
(goud, lime) — dan werd dit wit-op-licht en "verdween" de knop precies bij het aanwijzen.
|
|
552
488
|
Gereedschap houdt zijn eigen kleuren (zie het EditBar-commentaar). */
|
|
553
|
-
background: rgba(
|
|
489
|
+
background: rgba(28, 25, 23, 0.92);
|
|
554
490
|
}
|
|
555
491
|
.xicms-ve-pencil:focus-visible {
|
|
556
|
-
outline: 2px solid #a5b4fc;
|
|
492
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
557
493
|
outline-offset: 1px;
|
|
558
494
|
}
|
|
559
495
|
/* Het potlood van het veld dat je NU bewerkt wordt een groen vinkje: "het is goed, klaar met dit
|
|
@@ -594,7 +530,7 @@
|
|
|
594
530
|
background: rgba(255, 255, 255, 0.16);
|
|
595
531
|
}
|
|
596
532
|
.xicms-ve-fmtbar button:focus-visible {
|
|
597
|
-
outline: 2px solid #a5b4fc;
|
|
533
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
598
534
|
outline-offset: 1px;
|
|
599
535
|
}
|
|
600
536
|
.xicms-ve-fmtbar__sep {
|
|
@@ -603,6 +539,45 @@
|
|
|
603
539
|
margin: 3px 4px;
|
|
604
540
|
background: rgba(255, 255, 255, 0.25);
|
|
605
541
|
}
|
|
542
|
+
/* 8.6: de werkbalk van de volledige editor op de site. */
|
|
543
|
+
.xicms-ve-fmtbar { flex-wrap: wrap; max-width: calc(100vw - 16px); }
|
|
544
|
+
.xicms-ve-fmtbar button.is-actief { background: rgba(255, 255, 255, 0.24); }
|
|
545
|
+
.xicms-ve-fmtbar button.xicms-ve-fmtbar__klaar {
|
|
546
|
+
margin-left: 4px;
|
|
547
|
+
padding: 0 12px;
|
|
548
|
+
background: #16a34a;
|
|
549
|
+
font-weight: 600;
|
|
550
|
+
}
|
|
551
|
+
.xicms-ve-fmtbar button.xicms-ve-fmtbar__klaar:hover { background: #15803d; }
|
|
552
|
+
.xicms-ve-fmtbar__tip {
|
|
553
|
+
padding: 0 6px 0 8px;
|
|
554
|
+
color: rgba(255, 255, 255, 0.6);
|
|
555
|
+
font-size: 0.75rem;
|
|
556
|
+
white-space: nowrap;
|
|
557
|
+
}
|
|
558
|
+
.xicms-ve-fmtbar__tip kbd {
|
|
559
|
+
padding: 0 4px;
|
|
560
|
+
border: 1px solid rgba(255, 255, 255, 0.35);
|
|
561
|
+
border-radius: 4px;
|
|
562
|
+
font: inherit;
|
|
563
|
+
}
|
|
564
|
+
@media (max-width: 640px) { .xicms-ve-fmtbar__tip { display: none; } }
|
|
565
|
+
/* Het bewerkvlak zelf: de tekst houdt de opmaak van de site (zelfde klassen als het origineel). */
|
|
566
|
+
.xicms-ve-rijk {
|
|
567
|
+
border-radius: 4px;
|
|
568
|
+
outline: 2px solid var(--xicms-primary, #4f46e5);
|
|
569
|
+
outline-offset: 3px;
|
|
570
|
+
background: rgba(var(--xicms-tool-accent-rgb, 79, 70, 229), 0.04);
|
|
571
|
+
}
|
|
572
|
+
.xicms-ve-rijk .ProseMirror { outline: none; min-height: 2.5em; cursor: text; }
|
|
573
|
+
.xicms-ve-rijk .ProseMirror img { max-width: 100%; height: auto; }
|
|
574
|
+
.xicms-ve-rijk .ProseMirror img.ProseMirror-selectednode { outline: 3px solid var(--xicms-primary, #4f46e5); }
|
|
575
|
+
.xicms-ve-rijk .ProseMirror table { border-collapse: collapse; width: 100%; }
|
|
576
|
+
.xicms-ve-rijk .ProseMirror th,
|
|
577
|
+
.xicms-ve-rijk .ProseMirror td { border: 1px solid rgba(100, 116, 139, 0.45); padding: 0.35em 0.5em; vertical-align: top; min-width: 3em; }
|
|
578
|
+
.xicms-ve-rijk .ProseMirror th p,
|
|
579
|
+
.xicms-ve-rijk .ProseMirror td p { margin: 0; }
|
|
580
|
+
.xicms-ve-rijk .ProseMirror .selectedCell { background: rgba(var(--xicms-tool-accent-rgb, 79, 70, 229), 0.1); }
|
|
606
581
|
/* Inline afbeelding vervangen (visuele editor): icoontje over het beeld van het geselecteerde blok. */
|
|
607
582
|
.xicms-ve-img { line-height: 0; }
|
|
608
583
|
.xicms-ve-img__btn {
|
|
@@ -640,57 +615,7 @@
|
|
|
640
615
|
border-radius: 6px;
|
|
641
616
|
}
|
|
642
617
|
.xicms-ve-img:hover { outline-style: solid; }
|
|
643
|
-
|
|
644
|
-
position: absolute;
|
|
645
|
-
top: 0;
|
|
646
|
-
right: 0;
|
|
647
|
-
z-index: 2;
|
|
648
|
-
display: none;
|
|
649
|
-
align-items: center;
|
|
650
|
-
gap: 0.15rem;
|
|
651
|
-
padding: 0.2rem 0.35rem;
|
|
652
|
-
background: #0f172a;
|
|
653
|
-
color: #fff;
|
|
654
|
-
border-radius: 0 0 0 8px;
|
|
655
|
-
font-size: 0.8rem;
|
|
656
|
-
}
|
|
657
|
-
.xicms-ve-block:hover .xicms-ve-block__toolbar,
|
|
658
|
-
.xicms-ve-block.is-selected .xicms-ve-block__toolbar {
|
|
659
|
-
display: flex;
|
|
660
|
-
}
|
|
661
|
-
.xicms-ve-block__label {
|
|
662
|
-
opacity: 0.8;
|
|
663
|
-
margin-right: 0.4rem;
|
|
664
|
-
}
|
|
665
|
-
.xicms-ve-block__toolbar button {
|
|
666
|
-
background: none;
|
|
667
|
-
border: 0;
|
|
668
|
-
color: #fff;
|
|
669
|
-
cursor: pointer;
|
|
670
|
-
padding: 0.1rem 0.3rem;
|
|
671
|
-
border-radius: 4px;
|
|
672
|
-
font-size: 0.85rem;
|
|
673
|
-
}
|
|
674
|
-
.xicms-ve-block__toolbar button:hover:not(:disabled) {
|
|
675
|
-
background: rgba(255, 255, 255, 0.15);
|
|
676
|
-
}
|
|
677
|
-
.xicms-ve-block__toolbar button:disabled {
|
|
678
|
-
opacity: 0.35;
|
|
679
|
-
cursor: default;
|
|
680
|
-
}
|
|
681
|
-
@media (max-width: 720px) {
|
|
682
|
-
/* Op mobiel is er geen hover — de toolbar toont alleen bij selectie, en de brede knoppenrij
|
|
683
|
-
(5 knoppen × 40px raakdoel) besloeg dan bijna de volledige breedte en viel absoluut-gepositioneerd
|
|
684
|
-
over de eerste regel van de bloktekst heen (moeilijk te lezen, en per ongeluk 🗑 raken lag voor
|
|
685
|
-
de hand). In-flow boven het blok i.p.v. eroverheen. Ná de losstaande regel hierboven gezet zodat
|
|
686
|
-
hij in de cascade wint (media queries geven zelf geen extra specificiteit). */
|
|
687
|
-
.xicms-ve-block__toolbar {
|
|
688
|
-
position: static;
|
|
689
|
-
flex-wrap: wrap;
|
|
690
|
-
border-radius: 8px;
|
|
691
|
-
margin-bottom: 0.35rem;
|
|
692
|
-
}
|
|
693
|
-
}
|
|
618
|
+
|
|
694
619
|
|
|
695
620
|
/* Foutkaart voor een block dat niet kon renderen (alleen zichtbaar in de editor-preview). */
|
|
696
621
|
.xicms-block-error {
|
|
@@ -759,14 +684,6 @@
|
|
|
759
684
|
.xicms-card:has(a):hover { transform: none; }
|
|
760
685
|
}
|
|
761
686
|
|
|
762
|
-
/* Bewerkbare elementen in edit-modus */
|
|
763
|
-
.xicms-editable {
|
|
764
|
-
outline: 2px dashed var(--xicms-accent, #4f46e5);
|
|
765
|
-
outline-offset: 3px;
|
|
766
|
-
border-radius: 4px;
|
|
767
|
-
cursor: text;
|
|
768
|
-
}
|
|
769
|
-
|
|
770
687
|
/* Zwevende werkbalk voor editors */
|
|
771
688
|
/*
|
|
772
689
|
* De beheerbalk ZWEEFT ONDERAAN, gecentreerd — en in beide toestanden op precies dezelfde plek.
|
|
@@ -807,7 +724,7 @@
|
|
|
807
724
|
* doorschijnend glas (meer verzadiging in de blur, minder dekking) en de schaduw werd zachter,
|
|
808
725
|
* zodat het als gereedschap ernaast zweeft in plaats van als een blok erbovenop te liggen.
|
|
809
726
|
*/
|
|
810
|
-
background: rgba(
|
|
727
|
+
background: rgba(41, 37, 36, 0.72);
|
|
811
728
|
-webkit-backdrop-filter: saturate(1.8) blur(16px);
|
|
812
729
|
backdrop-filter: saturate(1.8) blur(16px);
|
|
813
730
|
color: #fff;
|
|
@@ -915,7 +832,7 @@
|
|
|
915
832
|
color: #fff;
|
|
916
833
|
}
|
|
917
834
|
.xicms-editbar__btn:focus-visible {
|
|
918
|
-
outline: 2px solid #a5b4fc;
|
|
835
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
919
836
|
outline-offset: 2px;
|
|
920
837
|
}
|
|
921
838
|
/*
|
|
@@ -1022,7 +939,8 @@
|
|
|
1022
939
|
/* Knopvarianten (gedeeld door hero/cta) */
|
|
1023
940
|
.xicms-btn--primary {
|
|
1024
941
|
background: var(--xicms-primary, #4f46e5);
|
|
1025
|
-
|
|
942
|
+
/* 8.12: tekstkleur rekent mee (wit op donker, donker op licht) — wit op een gele merkkleur was onleesbaar. */
|
|
943
|
+
color: var(--xicms-on-primary, #fff);
|
|
1026
944
|
}
|
|
1027
945
|
.xicms-btn--secondary {
|
|
1028
946
|
background: var(--xicms-accent, #6366f1);
|
|
@@ -1162,6 +1080,12 @@
|
|
|
1162
1080
|
font-size: 1.2rem;
|
|
1163
1081
|
opacity: 0.85;
|
|
1164
1082
|
margin: 0;
|
|
1083
|
+
/* 8.12: een ondertitel leest prettig tot ±60 tekens per regel; daarboven liep hij op een breed
|
|
1084
|
+
scherm in één lange streep van rand tot rand. */
|
|
1085
|
+
max-width: 60ch;
|
|
1086
|
+
}
|
|
1087
|
+
.xicms-hero[data-align="center"] .xicms-hero__sub {
|
|
1088
|
+
margin-inline: auto;
|
|
1165
1089
|
}
|
|
1166
1090
|
.xicms-hero__buttons,
|
|
1167
1091
|
.xicms-cta__buttons {
|
|
@@ -1215,6 +1139,32 @@
|
|
|
1215
1139
|
.xicms-richtext > :first-child {
|
|
1216
1140
|
margin-top: 0;
|
|
1217
1141
|
}
|
|
1142
|
+
/* 8.6: lijsten, citaten en lijnen in rich text. De reset van het thema haalt bolletjes en inspringing
|
|
1143
|
+
weg, dus een opsomming uit de editor stond op de site als losse regels. `:where()` houdt de
|
|
1144
|
+
specificiteit laag: een site die zelf lijsten opmaakt, wint. */
|
|
1145
|
+
.xicms-richtext :where(ul, ol) {
|
|
1146
|
+
margin: 0 0 1em;
|
|
1147
|
+
padding-left: 1.4em;
|
|
1148
|
+
}
|
|
1149
|
+
.xicms-richtext :where(ul) { list-style: disc; }
|
|
1150
|
+
.xicms-richtext :where(ol) { list-style: decimal; }
|
|
1151
|
+
.xicms-richtext :where(li) { margin: 0.2em 0; }
|
|
1152
|
+
/* Gecentreerd blok: bolletjes bij de tekst, niet los in de linkermarge. */
|
|
1153
|
+
.xicms-block--align-center .xicms-richtext :where(ul, ol) { list-style-position: inside; padding-left: 0; }
|
|
1154
|
+
/* TipTap zet <p> in elke <li>; als blok zou het bolletje dan op een eigen regel staan. */
|
|
1155
|
+
.xicms-block--align-center .xicms-richtext :where(li > p) { display: inline; }
|
|
1156
|
+
.xicms-richtext :where(li > p) { margin: 0; }
|
|
1157
|
+
.xicms-richtext :where(blockquote) {
|
|
1158
|
+
margin: 1em 0;
|
|
1159
|
+
padding: 0.2em 0 0.2em 1em;
|
|
1160
|
+
border-left: 3px solid var(--xicms-primary, #4f46e5);
|
|
1161
|
+
font-style: italic;
|
|
1162
|
+
}
|
|
1163
|
+
.xicms-richtext :where(hr) {
|
|
1164
|
+
margin: 1.5em 0;
|
|
1165
|
+
border: 0;
|
|
1166
|
+
border-top: 1px solid rgba(100, 116, 139, 0.35);
|
|
1167
|
+
}
|
|
1218
1168
|
.xicms-richtext a {
|
|
1219
1169
|
color: var(--xicms-primary, #4f46e5);
|
|
1220
1170
|
}
|
|
@@ -1338,14 +1288,7 @@
|
|
|
1338
1288
|
.xicms-lightbox__nav--prev { left: 0.4rem; }
|
|
1339
1289
|
.xicms-lightbox__nav--next { right: 0.4rem; }
|
|
1340
1290
|
}
|
|
1341
|
-
|
|
1342
|
-
text-align: center;
|
|
1343
|
-
padding: 2.5rem 1.25rem;
|
|
1344
|
-
background: var(--xicms-bg, #f8fafc);
|
|
1345
|
-
border: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.1));
|
|
1346
|
-
border-radius: var(--xicms-radius, 12px);
|
|
1347
|
-
margin: 1.5rem 0;
|
|
1348
|
-
}
|
|
1291
|
+
|
|
1349
1292
|
.xicms-columns {
|
|
1350
1293
|
display: grid;
|
|
1351
1294
|
gap: 1.25rem;
|
|
@@ -1396,11 +1339,12 @@
|
|
|
1396
1339
|
.xicms-form__success {
|
|
1397
1340
|
padding: 1rem;
|
|
1398
1341
|
border-radius: 10px;
|
|
1399
|
-
|
|
1400
|
-
|
|
1342
|
+
/* 8.12: tokens, zodat de melding in donkere modus meekleurt. */
|
|
1343
|
+
background: color-mix(in srgb, var(--xicms-success-fg, #15803d) 12%, transparent);
|
|
1344
|
+
color: var(--xicms-success-fg, #065f46);
|
|
1401
1345
|
}
|
|
1402
1346
|
.xicms-form__error {
|
|
1403
|
-
color: #
|
|
1347
|
+
color: var(--xicms-danger-fg, #b91c1c);
|
|
1404
1348
|
margin: 0;
|
|
1405
1349
|
}
|
|
1406
1350
|
|
|
@@ -1541,24 +1485,10 @@
|
|
|
1541
1485
|
font-size: 0.9rem;
|
|
1542
1486
|
font-weight: 600;
|
|
1543
1487
|
}
|
|
1544
|
-
/* Radiogroep in formulieren.
|
|
1488
|
+
/* Radiogroep in formulieren: sinds 8.0 een Astryx RadioList, die zijn eigen opmaak meebrengt.
|
|
1489
|
+
`.xicms-form__radios` blijft als stabiele haak op de container. */
|
|
1545
1490
|
.xicms-form__radios {
|
|
1546
|
-
border: 0;
|
|
1547
1491
|
margin: 0;
|
|
1548
|
-
padding: 0;
|
|
1549
|
-
display: grid;
|
|
1550
|
-
gap: 0.35rem;
|
|
1551
|
-
}
|
|
1552
|
-
.xicms-form__radios legend {
|
|
1553
|
-
font-size: 0.9rem;
|
|
1554
|
-
font-weight: 600;
|
|
1555
|
-
margin-bottom: 0.25rem;
|
|
1556
|
-
}
|
|
1557
|
-
.xicms-form__radio {
|
|
1558
|
-
display: flex;
|
|
1559
|
-
align-items: center;
|
|
1560
|
-
gap: 0.5rem;
|
|
1561
|
-
font-size: 0.95rem;
|
|
1562
1492
|
}
|
|
1563
1493
|
|
|
1564
1494
|
/* Uitgelichte kaart (cards-blok). */
|
|
@@ -1968,6 +1898,49 @@
|
|
|
1968
1898
|
color: inherit;
|
|
1969
1899
|
}
|
|
1970
1900
|
|
|
1901
|
+
/* "Website gemaakt door Xi Webdesign": één stille regel, erft de kleur en het
|
|
1902
|
+
font van de footer eromheen zodat hij op elke klantstijl past. */
|
|
1903
|
+
.xicms-footer__credit {
|
|
1904
|
+
display: flex;
|
|
1905
|
+
flex-wrap: wrap;
|
|
1906
|
+
align-items: center;
|
|
1907
|
+
gap: 0.15rem 0.5rem;
|
|
1908
|
+
margin-top: 1rem;
|
|
1909
|
+
padding-top: 0.85rem;
|
|
1910
|
+
border-top: 1px solid color-mix(in srgb, currentColor 12%, transparent);
|
|
1911
|
+
font-size: 0.78rem;
|
|
1912
|
+
line-height: 1.5;
|
|
1913
|
+
opacity: 0.6;
|
|
1914
|
+
}
|
|
1915
|
+
.xicms-footer__credit:hover {
|
|
1916
|
+
opacity: 0.85;
|
|
1917
|
+
}
|
|
1918
|
+
.xicms-footer__credit a {
|
|
1919
|
+
color: inherit;
|
|
1920
|
+
text-decoration: none;
|
|
1921
|
+
}
|
|
1922
|
+
.xicms-footer__credit-merk {
|
|
1923
|
+
display: inline-flex;
|
|
1924
|
+
align-items: center;
|
|
1925
|
+
gap: 0.4rem;
|
|
1926
|
+
font-weight: 650;
|
|
1927
|
+
}
|
|
1928
|
+
.xicms-footer__credit-merk svg {
|
|
1929
|
+
width: 0.95rem;
|
|
1930
|
+
height: 0.95rem;
|
|
1931
|
+
flex: none;
|
|
1932
|
+
}
|
|
1933
|
+
.xicms-footer__credit-merk:hover,
|
|
1934
|
+
.xicms-footer__credit-cta:hover {
|
|
1935
|
+
text-decoration: underline;
|
|
1936
|
+
text-underline-offset: 2px;
|
|
1937
|
+
}
|
|
1938
|
+
.xicms-footer__credit-cta {
|
|
1939
|
+
text-decoration: underline;
|
|
1940
|
+
text-underline-offset: 2px;
|
|
1941
|
+
text-decoration-color: color-mix(in srgb, currentColor 35%, transparent);
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1971
1944
|
/* Embed-consent placeholder (video/kaart/booking zonder toestemming) */
|
|
1972
1945
|
.xicms-embed-consent {
|
|
1973
1946
|
display: grid;
|
|
@@ -2579,8 +2552,8 @@
|
|
|
2579
2552
|
border-radius: var(--xicms-radius, 10px);
|
|
2580
2553
|
font: inherit;
|
|
2581
2554
|
}
|
|
2582
|
-
.xicms-widget--cta { background: var(--xicms-primary, #4f46e5); color: #fff; }
|
|
2583
|
-
.xicms-widget--cta .xicms-widget__title { color: #fff; }
|
|
2555
|
+
.xicms-widget--cta { background: var(--xicms-primary, #4f46e5); color: var(--xicms-on-primary, #fff); }
|
|
2556
|
+
.xicms-widget--cta .xicms-widget__title { color: var(--xicms-on-primary, #fff); }
|
|
2584
2557
|
.xicms-widget__grid { display: grid; gap: 0.4rem; }
|
|
2585
2558
|
.xicms-widget__grid[data-cols="2"] { grid-template-columns: repeat(2, 1fr); }
|
|
2586
2559
|
.xicms-widget__grid[data-cols="3"] { grid-template-columns: repeat(3, 1fr); }
|
|
@@ -3197,7 +3170,7 @@
|
|
|
3197
3170
|
gap: 2px;
|
|
3198
3171
|
padding: 2px;
|
|
3199
3172
|
border-radius: 999px;
|
|
3200
|
-
background: rgba(
|
|
3173
|
+
background: rgba(28, 25, 23, 0.42);
|
|
3201
3174
|
-webkit-backdrop-filter: blur(6px);
|
|
3202
3175
|
backdrop-filter: blur(6px);
|
|
3203
3176
|
opacity: 0.5;
|
|
@@ -3206,7 +3179,7 @@
|
|
|
3206
3179
|
.xicms-ve-blokknoppen:hover,
|
|
3207
3180
|
.xicms-ve-blokknoppen:focus-within {
|
|
3208
3181
|
opacity: 1;
|
|
3209
|
-
background: rgba(
|
|
3182
|
+
background: rgba(28, 25, 23, 0.9);
|
|
3210
3183
|
}
|
|
3211
3184
|
.xicms-ve-blokknop {
|
|
3212
3185
|
appearance: none;
|
|
@@ -3226,7 +3199,7 @@
|
|
|
3226
3199
|
background: rgba(255, 255, 255, 0.22);
|
|
3227
3200
|
}
|
|
3228
3201
|
.xicms-ve-blokknop:focus-visible {
|
|
3229
|
-
outline: 2px solid #a5b4fc;
|
|
3202
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
3230
3203
|
outline-offset: 1px;
|
|
3231
3204
|
}
|
|
3232
3205
|
/* De rest van het gereedschap (verplaatsen, dupliceren, verwijderen) toont zich bij aanwijzen,
|
|
@@ -3285,22 +3258,26 @@
|
|
|
3285
3258
|
}
|
|
3286
3259
|
|
|
3287
3260
|
/*
|
|
3288
|
-
*
|
|
3261
|
+
* Gemarkeerd (zachte tint + stippellijn, tot 8.11 rood) = dit staat nog NIET op de live site.
|
|
3289
3262
|
*
|
|
3290
3263
|
* Bewust een onderstreping en niet alleen kleur: kleur alleen is geen boodschap voor wie
|
|
3291
3264
|
* kleurenblind is, en dit is te belangrijk om aan kleur alleen op te hangen. De streep loopt onder
|
|
3292
3265
|
* de tekst door zonder de regelhoogte te veranderen, zodat de pagina niet verspringt zodra je iets
|
|
3293
3266
|
* wijzigt — anders zou de markering zelf de layout laten dansen tijdens het typen.
|
|
3294
3267
|
*/
|
|
3268
|
+
/* 8.11: nog niet live = een subtiele markering, niet meer rode tekst met een golflijn. Dat las
|
|
3269
|
+
als een spelfout of foutmelding, was op donkere vlakken onleesbaar en overschreef de typografie
|
|
3270
|
+
van de site. Nu: een zachte achtergrondtint en een stippellijn eronder, in de gereedschapskleur —
|
|
3271
|
+
de tekst zelf houdt zijn eigen kleur. */
|
|
3295
3272
|
.xicms-ve-gewijzigd {
|
|
3296
|
-
|
|
3297
|
-
text-decoration: underline
|
|
3298
|
-
text-underline-offset:
|
|
3273
|
+
background: color-mix(in srgb, var(--xicms-tool-accent, #4f46e5) 9%, transparent);
|
|
3274
|
+
text-decoration: underline dotted color-mix(in srgb, var(--xicms-tool-accent, #4f46e5) 70%, transparent) 2px;
|
|
3275
|
+
text-underline-offset: 4px;
|
|
3276
|
+
border-radius: 3px;
|
|
3299
3277
|
}
|
|
3300
|
-
/* Een heel nieuw of verplaatst blok: een streep in de kantlijn i.p.v. alle tekst
|
|
3301
|
-
kleuren van een blok dat in zijn geheel nieuw is, is geen informatie maar een rode lap. */
|
|
3278
|
+
/* Een heel nieuw of verplaatst blok: een streep in de kantlijn i.p.v. alle tekst gemarkeerd. */
|
|
3302
3279
|
.xicms-ve-nieuw {
|
|
3303
|
-
box-shadow: inset 3px 0 0 0 #
|
|
3280
|
+
box-shadow: inset 3px 0 0 0 var(--xicms-tool-accent, #4f46e5);
|
|
3304
3281
|
}
|
|
3305
3282
|
|
|
3306
3283
|
/*
|
|
@@ -3314,8 +3291,9 @@
|
|
|
3314
3291
|
/* Eénmalige starthint van de bewerkmodus: vast onder de balk, midden, weg te klikken. */
|
|
3315
3292
|
.xicms-ve-starthint {
|
|
3316
3293
|
position: fixed;
|
|
3317
|
-
/*
|
|
3318
|
-
|
|
3294
|
+
/* 8.11: boven de balk, die sinds 7.22 ONDERAAN staat. Met `top: 50px` (nog van de balk bovenin)
|
|
3295
|
+
lag de hint over het menu van de site — precies waar je als eerste naar kijkt. */
|
|
3296
|
+
bottom: calc(64px + var(--xicms-bottombar, 0px));
|
|
3319
3297
|
left: 50%;
|
|
3320
3298
|
transform: translateX(-50%);
|
|
3321
3299
|
z-index: 10006;
|
|
@@ -3325,11 +3303,11 @@
|
|
|
3325
3303
|
max-width: min(92vw, 560px);
|
|
3326
3304
|
padding: 0.6rem 0.9rem;
|
|
3327
3305
|
border-radius: 12px;
|
|
3328
|
-
background: rgba(
|
|
3306
|
+
background: rgba(28, 25, 23, 0.94);
|
|
3329
3307
|
color: #fff;
|
|
3330
3308
|
font-size: 0.85rem;
|
|
3331
3309
|
line-height: 1.45;
|
|
3332
|
-
box-shadow: 0 12px 32px rgba(
|
|
3310
|
+
box-shadow: 0 12px 32px rgba(28, 25, 23, 0.35);
|
|
3333
3311
|
}
|
|
3334
3312
|
.xicms-ve-starthint button {
|
|
3335
3313
|
flex: none;
|
|
@@ -3345,7 +3323,9 @@
|
|
|
3345
3323
|
|
|
3346
3324
|
/* Vervolg-actie in een toast ("Bekijk als bezoeker →"). */
|
|
3347
3325
|
.xicms-toast__actie {
|
|
3348
|
-
|
|
3326
|
+
/* Eigen regel onder de titel (8.2): inline plakte "Ongedaan maken" tegen de tekst aan. */
|
|
3327
|
+
display: block;
|
|
3328
|
+
width: fit-content;
|
|
3349
3329
|
margin-top: 0.45rem;
|
|
3350
3330
|
padding: 0.3rem 0.7rem;
|
|
3351
3331
|
border: 1px solid currentColor;
|
|
@@ -3400,16 +3380,16 @@
|
|
|
3400
3380
|
transition: background 0.15s ease, transform 0.15s ease;
|
|
3401
3381
|
}
|
|
3402
3382
|
.xicms-ve-publiceer.is-klaar {
|
|
3403
|
-
background: #
|
|
3383
|
+
background: var(--xicms-tool-accent, #4f46e5);
|
|
3404
3384
|
color: #fff;
|
|
3405
3385
|
cursor: pointer;
|
|
3406
3386
|
}
|
|
3407
3387
|
.xicms-ve-publiceer.is-klaar:hover {
|
|
3408
|
-
background: #
|
|
3388
|
+
background: color-mix(in srgb, var(--xicms-tool-accent, #4f46e5) 85%, #000);
|
|
3409
3389
|
transform: translateY(-1px);
|
|
3410
3390
|
}
|
|
3411
3391
|
.xicms-ve-publiceer:focus-visible {
|
|
3412
|
-
outline: 2px solid #a5b4fc;
|
|
3392
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
3413
3393
|
outline-offset: 3px;
|
|
3414
3394
|
}
|
|
3415
3395
|
.xicms-ve-publiceer__label {
|
|
@@ -3431,7 +3411,7 @@
|
|
|
3431
3411
|
padding: 0.45rem 0.9rem;
|
|
3432
3412
|
border: 1px solid rgba(255, 255, 255, 0.14);
|
|
3433
3413
|
border-radius: 999px;
|
|
3434
|
-
background: rgba(
|
|
3414
|
+
background: rgba(28, 25, 23, 0.75);
|
|
3435
3415
|
color: rgba(255, 255, 255, 0.85);
|
|
3436
3416
|
font: inherit;
|
|
3437
3417
|
font-size: 0.78rem;
|
|
@@ -3444,7 +3424,7 @@
|
|
|
3444
3424
|
color: #fff;
|
|
3445
3425
|
}
|
|
3446
3426
|
.xicms-ve-verwerp:focus-visible {
|
|
3447
|
-
outline: 2px solid #a5b4fc;
|
|
3427
|
+
outline: 2px solid var(--xicms-tool-focus, #a5b4fc);
|
|
3448
3428
|
outline-offset: 2px;
|
|
3449
3429
|
}
|
|
3450
3430
|
@media (min-width: 721px) {
|
|
@@ -3462,7 +3442,6 @@
|
|
|
3462
3442
|
opacity: 0.9;
|
|
3463
3443
|
}
|
|
3464
3444
|
|
|
3465
|
-
|
|
3466
3445
|
/* ── Hoofdnavigatie (SiteNav, 7.24) ───────────────────────────────────────────
|
|
3467
3446
|
* Unstyled-by-default: alleen de structuur die een submenu nodig heeft. Kleuren/afstanden komen
|
|
3468
3447
|
* uit de site zelf (.site-header nav a in de template) of uit een eigen `.xicms-nav`-laag. */
|
|
@@ -3571,3 +3550,965 @@
|
|
|
3571
3550
|
background: #f59e0b;
|
|
3572
3551
|
box-shadow: 0 0 0 2px #0f172a;
|
|
3573
3552
|
}
|
|
3553
|
+
|
|
3554
|
+
/* Raakdoelen op touch (8.2). Het potlood (18px, half doorzichtig) en de blokknoppen (26px) waren op
|
|
3555
|
+
een telefoon of tablet nauwelijks te raken; de oude touch-regel gold nog voor een toolbar die niet
|
|
3556
|
+
meer bestaat. Het zichtbare formaat blijft gelijk (de posities worden in JS op die maat berekend);
|
|
3557
|
+
een onzichtbare ::before vergroot alleen het raakvlak tot ~44px. Op touch ook vol zichtbaar: er is
|
|
3558
|
+
geen hover die ze anders tevoorschijn haalt. */
|
|
3559
|
+
@media (pointer: coarse) {
|
|
3560
|
+
.xicms-ve-pencil,
|
|
3561
|
+
.xicms-ve-blokknop {
|
|
3562
|
+
position: relative;
|
|
3563
|
+
opacity: 1;
|
|
3564
|
+
}
|
|
3565
|
+
.xicms-ve-pencil {
|
|
3566
|
+
position: fixed;
|
|
3567
|
+
}
|
|
3568
|
+
.xicms-ve-pencil::before,
|
|
3569
|
+
.xicms-ve-blokknop::before {
|
|
3570
|
+
content: "";
|
|
3571
|
+
position: absolute;
|
|
3572
|
+
inset: -11px;
|
|
3573
|
+
}
|
|
3574
|
+
.xicms-ve-blokknop::before {
|
|
3575
|
+
inset: -8px;
|
|
3576
|
+
}
|
|
3577
|
+
.xicms-ve-blokknoppen {
|
|
3578
|
+
gap: 10px;
|
|
3579
|
+
padding: 6px;
|
|
3580
|
+
opacity: 1;
|
|
3581
|
+
background: rgba(28, 25, 23, 0.85);
|
|
3582
|
+
}
|
|
3583
|
+
}
|
|
3584
|
+
|
|
3585
|
+
/* Laadmelding van de editor (8.2): de chunk komt pas bij "Bewerken"; tot dan zag je niets. */
|
|
3586
|
+
.xicms-editor-laden {
|
|
3587
|
+
position: fixed;
|
|
3588
|
+
left: 50%;
|
|
3589
|
+
bottom: 1.25rem;
|
|
3590
|
+
transform: translateX(-50%);
|
|
3591
|
+
z-index: 10010;
|
|
3592
|
+
display: flex;
|
|
3593
|
+
align-items: center;
|
|
3594
|
+
gap: 0.75rem;
|
|
3595
|
+
padding: 0.6rem 1rem;
|
|
3596
|
+
border-radius: 999px;
|
|
3597
|
+
background: rgba(28, 25, 23, 0.92);
|
|
3598
|
+
color: #fff;
|
|
3599
|
+
font: 500 0.9rem/1.3 system-ui, sans-serif;
|
|
3600
|
+
box-shadow: 0 8px 24px rgba(28, 25, 23, 0.25);
|
|
3601
|
+
}
|
|
3602
|
+
.xicms-editor-laden button {
|
|
3603
|
+
appearance: none;
|
|
3604
|
+
border: 0;
|
|
3605
|
+
border-radius: 999px;
|
|
3606
|
+
padding: 0.3rem 0.8rem;
|
|
3607
|
+
background: rgba(255, 255, 255, 0.16);
|
|
3608
|
+
color: inherit;
|
|
3609
|
+
font: inherit;
|
|
3610
|
+
cursor: pointer;
|
|
3611
|
+
}
|
|
3612
|
+
.xicms-editor-laden button:focus-visible {
|
|
3613
|
+
outline: 2px solid #fff;
|
|
3614
|
+
outline-offset: 2px;
|
|
3615
|
+
}
|
|
3616
|
+
|
|
3617
|
+
/* 8.8: pagina-overgangen (siteConfig.paginaOvergang), via React <ViewTransition>. */
|
|
3618
|
+
::view-transition-old(.xicms-vervagen) { animation: 120ms ease-in both xicms-vt-uit; }
|
|
3619
|
+
::view-transition-new(.xicms-vervagen) { animation: 200ms ease-out 60ms both xicms-vt-in; }
|
|
3620
|
+
::view-transition-old(.xicms-schuiven) { animation: 140ms ease-in both xicms-vt-uit, 300ms ease-in-out both xicms-vt-omhoog; }
|
|
3621
|
+
::view-transition-new(.xicms-schuiven) { animation: 220ms ease-out 100ms both xicms-vt-in, 300ms ease-in-out both xicms-vt-erin; }
|
|
3622
|
+
@keyframes xicms-vt-uit { to { opacity: 0; } }
|
|
3623
|
+
@keyframes xicms-vt-in { from { opacity: 0; } }
|
|
3624
|
+
@keyframes xicms-vt-omhoog { to { translate: 0 -12px; } }
|
|
3625
|
+
@keyframes xicms-vt-erin { from { translate: 0 12px; } }
|
|
3626
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3627
|
+
::view-transition-group(*),
|
|
3628
|
+
::view-transition-old(*),
|
|
3629
|
+
::view-transition-new(*) { animation: none !important; }
|
|
3630
|
+
}
|
|
3631
|
+
|
|
3632
|
+
/* 8.10: een gekleurd vlak over de volle breedte houdt zijn inhoud op containerbreedte — anders raakt
|
|
3633
|
+
de tekst de rand van het scherm. Links in een donker vlak volgen de tekstkleur (de merkkleur is
|
|
3634
|
+
daar vaak onleesbaar). */
|
|
3635
|
+
.xicms-block--bg.xicms-block--full {
|
|
3636
|
+
padding-left: max(var(--xicms-container-pad), calc((100vw - var(--xicms-container-max)) / 2));
|
|
3637
|
+
padding-right: max(var(--xicms-container-pad), calc((100vw - var(--xicms-container-max)) / 2));
|
|
3638
|
+
}
|
|
3639
|
+
.xicms-block--bg-donker .xicms-richtext a,
|
|
3640
|
+
.xicms-block--bg-donker :where(p, li) > a {
|
|
3641
|
+
color: inherit;
|
|
3642
|
+
text-decoration: underline;
|
|
3643
|
+
}
|
|
3644
|
+
|
|
3645
|
+
/* 8.10: tekst die de klant typt mag de layout niet breken.
|
|
3646
|
+
- Een lang Nederlands samengesteld woord ("arbeidsongeschiktheidsverzekering") in een groot
|
|
3647
|
+
koppen-font viel op een telefoon half buiten beeld (`.xicms-root` knipt horizontaal af). Breken
|
|
3648
|
+
binnen het woord is lelijk, maar beter dan onzichtbaar — en gebeurt alleen bij echte overloop.
|
|
3649
|
+
- Een tabel uit Excel is vaak breder dan een telefoon: hij scrolt nu zelf, de pagina niet.
|
|
3650
|
+
- Een staande telefoonfoto in een afbeeldingsblok werd ruim 1000px hoog. */
|
|
3651
|
+
/* Niet op h3/h4: die staan meestal in smalle kaarten, waar een woord dat net iets te breed is
|
|
3652
|
+
anders zijn laatste letter op een eigen regel kreeg ("Kindvriendelij-k"); een paar pixels
|
|
3653
|
+
uitsteken binnen de kaart is daar beter. */
|
|
3654
|
+
.xicms-root :where(h1, h2, .xicms-richtext, .xicms-richtext :where(p, li)) {
|
|
3655
|
+
/* Alleen breken als een woord écht niet past. Geen `hyphens: auto`: dat brak ook woorden die
|
|
3656
|
+
prima op een eigen regel pasten ("Bood-schap" in een hero) — lelijker dan het probleem. */
|
|
3657
|
+
overflow-wrap: break-word;
|
|
3658
|
+
}
|
|
3659
|
+
.xicms-richtext table {
|
|
3660
|
+
display: block;
|
|
3661
|
+
max-width: 100%;
|
|
3662
|
+
overflow-x: auto;
|
|
3663
|
+
}
|
|
3664
|
+
.xicms-image:not([data-ratio]) img,
|
|
3665
|
+
.xicms-image[data-ratio="auto"] img {
|
|
3666
|
+
display: block;
|
|
3667
|
+
width: auto;
|
|
3668
|
+
max-width: 100%;
|
|
3669
|
+
max-height: 80vh;
|
|
3670
|
+
margin-inline: auto;
|
|
3671
|
+
}
|
|
3672
|
+
|
|
3673
|
+
/* 8.11: een blok dat (nog) niets toont — een galerij zonder foto's, een video zonder adres — was
|
|
3674
|
+
in de editor onvindbaar: 0×0, dus geen potlood en geen tandwiel, en "weg" zodra je het paneel
|
|
3675
|
+
sloot. In de werkversie staat er nu een vak met zijn naam. Bezoekers zien niets. */
|
|
3676
|
+
[data-xicms-block][data-xicms-block-label]:empty {
|
|
3677
|
+
display: block !important;
|
|
3678
|
+
margin: 1.5rem auto;
|
|
3679
|
+
max-width: var(--xicms-container-max);
|
|
3680
|
+
padding: 2.25rem 1.25rem;
|
|
3681
|
+
border: 2px dashed color-mix(in srgb, currentColor 25%, transparent);
|
|
3682
|
+
border-radius: 12px;
|
|
3683
|
+
text-align: center;
|
|
3684
|
+
font: 500 0.95rem/1.4 system-ui, sans-serif;
|
|
3685
|
+
color: color-mix(in srgb, currentColor 65%, transparent);
|
|
3686
|
+
}
|
|
3687
|
+
[data-xicms-block][data-xicms-block-label]:empty::before {
|
|
3688
|
+
content: "Leeg blok: " attr(data-xicms-block-label) " — vul het in met het tandwiel ⚙";
|
|
3689
|
+
}
|
|
3690
|
+
|
|
3691
|
+
/* ── 8.11: gereedschap op de pagina (InlineGereedschap) ──────────────────────────────────────
|
|
3692
|
+
Gereedschapstokens: één accent en één glas voor alles wat de editor óp de site tekent. Golf 14
|
|
3693
|
+
zet het bestaande editorgereedschap op dezelfde tokens. */
|
|
3694
|
+
:root {
|
|
3695
|
+
--xicms-tool-glas: rgba(28, 25, 23, 0.9);
|
|
3696
|
+
--xicms-tool-glas-licht: rgba(28, 25, 23, 0.55);
|
|
3697
|
+
--xicms-tool-fg: #fafaf9;
|
|
3698
|
+
--xicms-tool-muted: rgba(250, 250, 249, 0.68);
|
|
3699
|
+
--xicms-tool-accent: #4f46e5;
|
|
3700
|
+
--xicms-tool-accent-rgb: 79, 70, 229;
|
|
3701
|
+
--xicms-tool-focus: #a5b4fc;
|
|
3702
|
+
--xicms-tool-schaduw: 0 8px 24px rgba(2, 6, 23, 0.28);
|
|
3703
|
+
}
|
|
3704
|
+
.xicms-ve-snel,
|
|
3705
|
+
.xicms-ve-item,
|
|
3706
|
+
.xicms-ve-plus,
|
|
3707
|
+
.xicms-ve-linkchip {
|
|
3708
|
+
position: fixed;
|
|
3709
|
+
z-index: 10005;
|
|
3710
|
+
font: 500 12.5px/1.2 system-ui, -apple-system, "Segoe UI", sans-serif;
|
|
3711
|
+
color: var(--xicms-tool-fg);
|
|
3712
|
+
background: var(--xicms-tool-glas);
|
|
3713
|
+
-webkit-backdrop-filter: blur(8px);
|
|
3714
|
+
backdrop-filter: blur(8px);
|
|
3715
|
+
box-shadow: var(--xicms-tool-schaduw);
|
|
3716
|
+
}
|
|
3717
|
+
.xicms-ve-snel {
|
|
3718
|
+
display: flex;
|
|
3719
|
+
flex-wrap: wrap;
|
|
3720
|
+
align-items: center;
|
|
3721
|
+
gap: 4px 10px;
|
|
3722
|
+
max-width: min(640px, calc(100vw - 120px));
|
|
3723
|
+
padding: 4px 6px 4px 10px;
|
|
3724
|
+
border-radius: 12px;
|
|
3725
|
+
}
|
|
3726
|
+
.xicms-ve-snel__groep {
|
|
3727
|
+
display: inline-flex;
|
|
3728
|
+
align-items: center;
|
|
3729
|
+
gap: 2px;
|
|
3730
|
+
}
|
|
3731
|
+
.xicms-ve-snel__label {
|
|
3732
|
+
margin-right: 4px;
|
|
3733
|
+
color: var(--xicms-tool-muted);
|
|
3734
|
+
}
|
|
3735
|
+
.xicms-ve-snel__knop,
|
|
3736
|
+
.xicms-ve-snel__meer,
|
|
3737
|
+
.xicms-ve-item button {
|
|
3738
|
+
appearance: none;
|
|
3739
|
+
min-width: 28px;
|
|
3740
|
+
height: 28px;
|
|
3741
|
+
padding: 0 8px;
|
|
3742
|
+
border: 0;
|
|
3743
|
+
border-radius: 8px;
|
|
3744
|
+
background: transparent;
|
|
3745
|
+
color: inherit;
|
|
3746
|
+
font: inherit;
|
|
3747
|
+
cursor: pointer;
|
|
3748
|
+
}
|
|
3749
|
+
.xicms-ve-snel__knop:hover,
|
|
3750
|
+
.xicms-ve-snel__meer:hover,
|
|
3751
|
+
.xicms-ve-item button:hover:not(:disabled) {
|
|
3752
|
+
background: rgba(255, 255, 255, 0.16);
|
|
3753
|
+
}
|
|
3754
|
+
.xicms-ve-snel__knop[aria-checked="true"] {
|
|
3755
|
+
background: var(--xicms-tool-fg);
|
|
3756
|
+
color: #1c1917;
|
|
3757
|
+
}
|
|
3758
|
+
.xicms-ve-snel__meer {
|
|
3759
|
+
margin-left: 2px;
|
|
3760
|
+
border-left: 1px solid rgba(255, 255, 255, 0.18);
|
|
3761
|
+
border-radius: 0 8px 8px 0;
|
|
3762
|
+
}
|
|
3763
|
+
.xicms-ve-item {
|
|
3764
|
+
display: flex;
|
|
3765
|
+
gap: 1px;
|
|
3766
|
+
padding: 2px;
|
|
3767
|
+
border-radius: 10px;
|
|
3768
|
+
transform: translateX(-100%);
|
|
3769
|
+
}
|
|
3770
|
+
.xicms-ve-item button:disabled {
|
|
3771
|
+
opacity: 0.35;
|
|
3772
|
+
cursor: default;
|
|
3773
|
+
}
|
|
3774
|
+
.xicms-ve-item button.is-gevaar:hover {
|
|
3775
|
+
background: rgba(239, 68, 68, 0.85);
|
|
3776
|
+
}
|
|
3777
|
+
.xicms-ve-plus {
|
|
3778
|
+
transform: translateX(-50%);
|
|
3779
|
+
padding: 6px 14px;
|
|
3780
|
+
border: 0;
|
|
3781
|
+
border-radius: 999px;
|
|
3782
|
+
cursor: pointer;
|
|
3783
|
+
}
|
|
3784
|
+
.xicms-ve-plus:hover {
|
|
3785
|
+
background: var(--xicms-tool-accent);
|
|
3786
|
+
}
|
|
3787
|
+
.xicms-ve-linkchip {
|
|
3788
|
+
max-width: 320px;
|
|
3789
|
+
overflow: hidden;
|
|
3790
|
+
padding: 5px 10px;
|
|
3791
|
+
border: 0;
|
|
3792
|
+
border-radius: 8px;
|
|
3793
|
+
text-overflow: ellipsis;
|
|
3794
|
+
white-space: nowrap;
|
|
3795
|
+
cursor: pointer;
|
|
3796
|
+
}
|
|
3797
|
+
.xicms-ve-linkchip:hover {
|
|
3798
|
+
background: var(--xicms-tool-accent);
|
|
3799
|
+
}
|
|
3800
|
+
:is(.xicms-ve-snel__knop, .xicms-ve-snel__meer, .xicms-ve-item button, .xicms-ve-plus, .xicms-ve-linkchip):focus-visible {
|
|
3801
|
+
outline: 2px solid var(--xicms-tool-focus);
|
|
3802
|
+
outline-offset: 1px;
|
|
3803
|
+
}
|
|
3804
|
+
@media (pointer: coarse) {
|
|
3805
|
+
.xicms-ve-snel__knop,
|
|
3806
|
+
.xicms-ve-snel__meer,
|
|
3807
|
+
.xicms-ve-item button {
|
|
3808
|
+
min-width: 40px;
|
|
3809
|
+
height: 40px;
|
|
3810
|
+
}
|
|
3811
|
+
.xicms-ve-plus,
|
|
3812
|
+
.xicms-ve-linkchip {
|
|
3813
|
+
padding: 10px 16px;
|
|
3814
|
+
}
|
|
3815
|
+
}
|
|
3816
|
+
|
|
3817
|
+
/* 8.11: "+" op de naad onder een blok — hier iets toevoegen. */
|
|
3818
|
+
.xicms-ve-tussenplus {
|
|
3819
|
+
position: fixed;
|
|
3820
|
+
z-index: 10004;
|
|
3821
|
+
display: grid;
|
|
3822
|
+
place-items: center;
|
|
3823
|
+
width: 30px;
|
|
3824
|
+
height: 30px;
|
|
3825
|
+
transform: translate(-50%, -50%);
|
|
3826
|
+
border: 2px solid #fff;
|
|
3827
|
+
border-radius: 999px;
|
|
3828
|
+
background: var(--xicms-tool-glas);
|
|
3829
|
+
color: var(--xicms-tool-fg);
|
|
3830
|
+
font: 600 18px/1 system-ui, sans-serif;
|
|
3831
|
+
box-shadow: var(--xicms-tool-schaduw);
|
|
3832
|
+
cursor: pointer;
|
|
3833
|
+
transition: transform 0.12s ease, background 0.12s ease;
|
|
3834
|
+
}
|
|
3835
|
+
.xicms-ve-tussenplus:hover,
|
|
3836
|
+
.xicms-ve-tussenplus:focus-visible {
|
|
3837
|
+
background: var(--xicms-tool-accent);
|
|
3838
|
+
transform: translate(-50%, -50%) scale(1.12);
|
|
3839
|
+
outline: none;
|
|
3840
|
+
}
|
|
3841
|
+
@media (pointer: coarse) {
|
|
3842
|
+
.xicms-ve-tussenplus { width: 40px; height: 40px; }
|
|
3843
|
+
}
|
|
3844
|
+
|
|
3845
|
+
/* 8.11: kaders rond blokken (BlokKader). */
|
|
3846
|
+
.xicms-ve-kader {
|
|
3847
|
+
position: fixed;
|
|
3848
|
+
z-index: 10003;
|
|
3849
|
+
pointer-events: none;
|
|
3850
|
+
border-radius: 4px;
|
|
3851
|
+
}
|
|
3852
|
+
.xicms-ve-kader.is-aangewezen {
|
|
3853
|
+
outline: 1.5px dashed color-mix(in srgb, var(--xicms-tool-accent) 70%, transparent);
|
|
3854
|
+
outline-offset: -1px;
|
|
3855
|
+
}
|
|
3856
|
+
.xicms-ve-kader.is-gekozen {
|
|
3857
|
+
outline: 2px solid var(--xicms-tool-accent);
|
|
3858
|
+
outline-offset: -2px;
|
|
3859
|
+
}
|
|
3860
|
+
.xicms-ve-kader__naam {
|
|
3861
|
+
position: absolute;
|
|
3862
|
+
top: 0;
|
|
3863
|
+
left: 0;
|
|
3864
|
+
padding: 2px 8px;
|
|
3865
|
+
border-radius: 0 0 6px 0;
|
|
3866
|
+
background: var(--xicms-tool-accent);
|
|
3867
|
+
color: #fff;
|
|
3868
|
+
font: 600 11px/1.5 system-ui, sans-serif;
|
|
3869
|
+
}
|
|
3870
|
+
|
|
3871
|
+
/* 8.11: zijlade open op een breed scherm → de balk centreert in de ruimte náást de lade, anders
|
|
3872
|
+
schoof de publiceerknop (die met de lade meeschuift) over de balk heen. */
|
|
3873
|
+
@media (min-width: 721px) {
|
|
3874
|
+
:root:has(.xicms-ve__panel) .xicms-ve__bar {
|
|
3875
|
+
left: calc((100vw - clamp(360px, 28vw, 480px)) / 2);
|
|
3876
|
+
max-width: calc(100vw - clamp(360px, 28vw, 480px) - 340px);
|
|
3877
|
+
}
|
|
3878
|
+
/* De lade zegt zelf "✓ Opgeslagen"; dubbel in de balk maakte hem te breed. */
|
|
3879
|
+
:root:has(.xicms-ve__panel) .xicms-ve__status {
|
|
3880
|
+
display: none;
|
|
3881
|
+
}
|
|
3882
|
+
}
|
|
3883
|
+
|
|
3884
|
+
/* 8.11: tijdens het bewerken hoort de cookiemelding van de site niet over je werk te liggen; de
|
|
3885
|
+
beheerder ziet hem als bezoeker ("Live site") gewoon weer. */
|
|
3886
|
+
:root:has(.xicms-ve__shell) .xicms-consent {
|
|
3887
|
+
display: none;
|
|
3888
|
+
}
|
|
3889
|
+
@media (max-width: 720px) {
|
|
3890
|
+
.xicms-ve-starthint {
|
|
3891
|
+
left: 12px;
|
|
3892
|
+
right: 12px;
|
|
3893
|
+
transform: none;
|
|
3894
|
+
max-width: none;
|
|
3895
|
+
flex-direction: column;
|
|
3896
|
+
align-items: stretch;
|
|
3897
|
+
bottom: calc(110px + var(--xicms-bottombar, 0px));
|
|
3898
|
+
}
|
|
3899
|
+
}
|
|
3900
|
+
@media (max-width: 720px) {
|
|
3901
|
+
/* Telefoon: de snelle keuzes als één scrollbare rij over de volle breedte, niet als blok over
|
|
3902
|
+
de kaarten heen. */
|
|
3903
|
+
.xicms-ve-snel {
|
|
3904
|
+
left: 8px !important;
|
|
3905
|
+
right: 8px;
|
|
3906
|
+
max-width: none;
|
|
3907
|
+
flex-wrap: nowrap;
|
|
3908
|
+
overflow-x: auto;
|
|
3909
|
+
scrollbar-width: none;
|
|
3910
|
+
}
|
|
3911
|
+
.xicms-ve-snel__groep,
|
|
3912
|
+
.xicms-ve-snel__label,
|
|
3913
|
+
.xicms-ve-snel__knop {
|
|
3914
|
+
flex: none;
|
|
3915
|
+
white-space: nowrap;
|
|
3916
|
+
}
|
|
3917
|
+
}
|
|
3918
|
+
|
|
3919
|
+
/* ── 8.12: nieuwslijst als raster ───────────────────────────────────────────────────────── */
|
|
3920
|
+
.xicms-nieuwslijst {
|
|
3921
|
+
display: grid;
|
|
3922
|
+
grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
|
|
3923
|
+
gap: 1.25rem;
|
|
3924
|
+
}
|
|
3925
|
+
.xicms-nieuwslijst > :not(.xicms-nieuwskaart) {
|
|
3926
|
+
grid-column: 1 / -1;
|
|
3927
|
+
}
|
|
3928
|
+
.xicms-nieuwskaart {
|
|
3929
|
+
position: relative;
|
|
3930
|
+
display: flex;
|
|
3931
|
+
flex-direction: column;
|
|
3932
|
+
overflow: hidden;
|
|
3933
|
+
padding: 0;
|
|
3934
|
+
transition: transform 0.15s ease, box-shadow 0.15s ease;
|
|
3935
|
+
}
|
|
3936
|
+
.xicms-nieuwskaart:hover {
|
|
3937
|
+
transform: translateY(-2px);
|
|
3938
|
+
box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
|
|
3939
|
+
}
|
|
3940
|
+
.xicms-nieuwskaart__beeld {
|
|
3941
|
+
display: block;
|
|
3942
|
+
width: 100%;
|
|
3943
|
+
aspect-ratio: 16 / 10;
|
|
3944
|
+
height: auto;
|
|
3945
|
+
object-fit: cover;
|
|
3946
|
+
}
|
|
3947
|
+
.xicms-nieuwskaart__tekst {
|
|
3948
|
+
display: grid;
|
|
3949
|
+
gap: 0.35rem;
|
|
3950
|
+
padding: 1rem 1.15rem 1.25rem;
|
|
3951
|
+
}
|
|
3952
|
+
.xicms-nieuwskaart__datum {
|
|
3953
|
+
margin: 0;
|
|
3954
|
+
font-size: 0.8rem;
|
|
3955
|
+
opacity: 0.7;
|
|
3956
|
+
}
|
|
3957
|
+
.xicms-nieuwskaart__titel {
|
|
3958
|
+
margin: 0;
|
|
3959
|
+
font-size: 1.2rem;
|
|
3960
|
+
line-height: 1.3;
|
|
3961
|
+
}
|
|
3962
|
+
.xicms-nieuwskaart__titel a {
|
|
3963
|
+
color: inherit;
|
|
3964
|
+
text-decoration: none;
|
|
3965
|
+
}
|
|
3966
|
+
/* De hele kaart is de link (één tabstop, geen geneste links). */
|
|
3967
|
+
.xicms-nieuwskaart__titel a::after {
|
|
3968
|
+
content: "";
|
|
3969
|
+
position: absolute;
|
|
3970
|
+
inset: 0;
|
|
3971
|
+
}
|
|
3972
|
+
.xicms-nieuwskaart:hover .xicms-nieuwskaart__titel a,
|
|
3973
|
+
.xicms-nieuwskaart__titel a:focus-visible {
|
|
3974
|
+
text-decoration: underline;
|
|
3975
|
+
text-underline-offset: 3px;
|
|
3976
|
+
}
|
|
3977
|
+
.xicms-nieuwskaart__concept {
|
|
3978
|
+
margin-left: 0.5rem;
|
|
3979
|
+
font-size: 0.75rem;
|
|
3980
|
+
color: var(--xicms-warning-fg, #b45309);
|
|
3981
|
+
}
|
|
3982
|
+
.xicms-nieuwskaart__samenvatting {
|
|
3983
|
+
margin: 0;
|
|
3984
|
+
opacity: 0.85;
|
|
3985
|
+
}
|
|
3986
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3987
|
+
.xicms-nieuwskaart { transition: none; }
|
|
3988
|
+
.xicms-nieuwskaart:hover { transform: none; }
|
|
3989
|
+
}
|
|
3990
|
+
|
|
3991
|
+
/* 8.12: echte omlijnde knop (Btn variant "outline"). Op een hero-foto houdt de hero zijn eigen,
|
|
3992
|
+
lichte variant (die selector is specifieker). */
|
|
3993
|
+
.xicms-root .astryx-button.xicms-btn-omlijnd {
|
|
3994
|
+
box-shadow: inset 0 0 0 1.5px currentColor;
|
|
3995
|
+
color: var(--xicms-primary, var(--color-accent));
|
|
3996
|
+
}
|
|
3997
|
+
.xicms-root .astryx-button.xicms-btn-omlijnd:hover {
|
|
3998
|
+
background: color-mix(in srgb, var(--xicms-primary, #4f46e5) 8%, transparent);
|
|
3999
|
+
}
|
|
4000
|
+
|
|
4001
|
+
/* 8.13: openingstijden uit het bedrijfsprofiel — toelichting en afwijkende dagen. */
|
|
4002
|
+
.xicms-hours__noot {
|
|
4003
|
+
margin: 0.5rem 0 0;
|
|
4004
|
+
font-size: 0.9rem;
|
|
4005
|
+
opacity: 0.8;
|
|
4006
|
+
}
|
|
4007
|
+
.xicms-hours__afwijkend {
|
|
4008
|
+
margin-top: 1rem;
|
|
4009
|
+
padding: 0.75rem 1rem;
|
|
4010
|
+
border-radius: var(--xicms-radius-sm, 8px);
|
|
4011
|
+
background: color-mix(in srgb, var(--xicms-warning-fg, #b45309) 10%, transparent);
|
|
4012
|
+
border-left: 3px solid var(--xicms-warning-fg, #b45309);
|
|
4013
|
+
}
|
|
4014
|
+
.xicms-hours__afwijkend ul {
|
|
4015
|
+
display: grid;
|
|
4016
|
+
gap: 0.25rem;
|
|
4017
|
+
margin: 0.4rem 0 0;
|
|
4018
|
+
padding: 0;
|
|
4019
|
+
list-style: none;
|
|
4020
|
+
}
|
|
4021
|
+
.xicms-hours__afwijkend li {
|
|
4022
|
+
display: flex;
|
|
4023
|
+
justify-content: space-between;
|
|
4024
|
+
gap: 1rem;
|
|
4025
|
+
font-size: 0.95rem;
|
|
4026
|
+
}
|
|
4027
|
+
|
|
4028
|
+
/* ── 8.13: SiteHeader ──────────────────────────────────────────────────────────────────────── */
|
|
4029
|
+
.xicms-header {
|
|
4030
|
+
position: relative;
|
|
4031
|
+
z-index: 40;
|
|
4032
|
+
background: var(--xicms-bg, #fff);
|
|
4033
|
+
border-bottom: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.08));
|
|
4034
|
+
}
|
|
4035
|
+
.xicms-header.is-sticky {
|
|
4036
|
+
position: sticky;
|
|
4037
|
+
top: var(--xicms-topbar, 0px);
|
|
4038
|
+
background: color-mix(in srgb, var(--xicms-bg, #fff) 90%, transparent);
|
|
4039
|
+
-webkit-backdrop-filter: saturate(1.4) blur(10px);
|
|
4040
|
+
backdrop-filter: saturate(1.4) blur(10px);
|
|
4041
|
+
}
|
|
4042
|
+
.xicms-header__binnen {
|
|
4043
|
+
display: flex;
|
|
4044
|
+
align-items: center;
|
|
4045
|
+
gap: 1.5rem;
|
|
4046
|
+
max-width: var(--xicms-container-max);
|
|
4047
|
+
margin: 0 auto;
|
|
4048
|
+
padding: 0.85rem var(--xicms-container-pad);
|
|
4049
|
+
}
|
|
4050
|
+
.xicms-header__merk {
|
|
4051
|
+
display: inline-flex;
|
|
4052
|
+
align-items: center;
|
|
4053
|
+
flex: none;
|
|
4054
|
+
color: inherit;
|
|
4055
|
+
font-family: var(--xicms-font-heading, inherit);
|
|
4056
|
+
font-size: 1.2rem;
|
|
4057
|
+
font-weight: 700;
|
|
4058
|
+
text-decoration: none;
|
|
4059
|
+
}
|
|
4060
|
+
.xicms-header__merk img {
|
|
4061
|
+
display: block;
|
|
4062
|
+
width: auto;
|
|
4063
|
+
max-width: 220px;
|
|
4064
|
+
object-fit: contain;
|
|
4065
|
+
}
|
|
4066
|
+
.xicms-header__nav {
|
|
4067
|
+
display: flex;
|
|
4068
|
+
flex: 1;
|
|
4069
|
+
align-items: center;
|
|
4070
|
+
justify-content: flex-end;
|
|
4071
|
+
}
|
|
4072
|
+
.xicms-header__menu .xicms-nav__list {
|
|
4073
|
+
display: flex;
|
|
4074
|
+
flex-wrap: wrap;
|
|
4075
|
+
gap: 0.25rem 1.25rem;
|
|
4076
|
+
}
|
|
4077
|
+
.xicms-header__menu .xicms-nav__link {
|
|
4078
|
+
color: inherit;
|
|
4079
|
+
text-decoration: none;
|
|
4080
|
+
font-weight: 500;
|
|
4081
|
+
}
|
|
4082
|
+
.xicms-header__menu .xicms-nav__link[aria-current="page"] {
|
|
4083
|
+
color: var(--xicms-primary);
|
|
4084
|
+
}
|
|
4085
|
+
.xicms-header__cta,
|
|
4086
|
+
.xicms-mobielbalk__cta {
|
|
4087
|
+
display: inline-flex;
|
|
4088
|
+
align-items: center;
|
|
4089
|
+
flex: none;
|
|
4090
|
+
padding: 0.6rem 1.1rem;
|
|
4091
|
+
border-radius: var(--xicms-radius-sm, 8px);
|
|
4092
|
+
background: var(--xicms-primary);
|
|
4093
|
+
color: var(--xicms-on-primary, #fff);
|
|
4094
|
+
font-weight: 600;
|
|
4095
|
+
text-decoration: none;
|
|
4096
|
+
}
|
|
4097
|
+
.xicms-header__cta:hover,
|
|
4098
|
+
.xicms-mobielbalk__cta:hover {
|
|
4099
|
+
filter: brightness(0.95);
|
|
4100
|
+
}
|
|
4101
|
+
.xicms-header__cta--in-menu,
|
|
4102
|
+
.xicms-header__knop {
|
|
4103
|
+
display: none;
|
|
4104
|
+
}
|
|
4105
|
+
.xicms-header__knop {
|
|
4106
|
+
width: 44px;
|
|
4107
|
+
height: 44px;
|
|
4108
|
+
margin-left: auto;
|
|
4109
|
+
place-items: center;
|
|
4110
|
+
border: 0;
|
|
4111
|
+
border-radius: 10px;
|
|
4112
|
+
background: transparent;
|
|
4113
|
+
color: inherit;
|
|
4114
|
+
cursor: pointer;
|
|
4115
|
+
}
|
|
4116
|
+
.xicms-header__streepjes,
|
|
4117
|
+
.xicms-header__streepjes::before,
|
|
4118
|
+
.xicms-header__streepjes::after {
|
|
4119
|
+
display: block;
|
|
4120
|
+
width: 22px;
|
|
4121
|
+
height: 2px;
|
|
4122
|
+
border-radius: 2px;
|
|
4123
|
+
background: currentColor;
|
|
4124
|
+
transition: transform 0.2s ease, opacity 0.2s ease;
|
|
4125
|
+
}
|
|
4126
|
+
.xicms-header__streepjes { position: relative; }
|
|
4127
|
+
.xicms-header__streepjes::before,
|
|
4128
|
+
.xicms-header__streepjes::after {
|
|
4129
|
+
content: "";
|
|
4130
|
+
position: absolute;
|
|
4131
|
+
left: 0;
|
|
4132
|
+
}
|
|
4133
|
+
.xicms-header__streepjes::before { top: -7px; }
|
|
4134
|
+
.xicms-header__streepjes::after { top: 7px; }
|
|
4135
|
+
.xicms-header.is-open .xicms-header__streepjes { background: transparent; }
|
|
4136
|
+
.xicms-header.is-open .xicms-header__streepjes::before { transform: translateY(7px) rotate(45deg); }
|
|
4137
|
+
.xicms-header.is-open .xicms-header__streepjes::after { transform: translateY(-7px) rotate(-45deg); }
|
|
4138
|
+
|
|
4139
|
+
@media (max-width: 900px) {
|
|
4140
|
+
.xicms-header__knop { display: grid; }
|
|
4141
|
+
.xicms-header__binnen > .xicms-header__cta { display: none; }
|
|
4142
|
+
.xicms-header__nav {
|
|
4143
|
+
position: absolute;
|
|
4144
|
+
top: 100%;
|
|
4145
|
+
left: 0;
|
|
4146
|
+
right: 0;
|
|
4147
|
+
display: none;
|
|
4148
|
+
flex-direction: column;
|
|
4149
|
+
align-items: stretch;
|
|
4150
|
+
gap: 1rem;
|
|
4151
|
+
max-height: calc(100dvh - 70px);
|
|
4152
|
+
overflow-y: auto;
|
|
4153
|
+
padding: 1rem var(--xicms-container-pad) 1.5rem;
|
|
4154
|
+
background: var(--xicms-bg, #fff);
|
|
4155
|
+
border-bottom: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.08));
|
|
4156
|
+
box-shadow: 0 16px 32px rgba(0, 0, 0, 0.08);
|
|
4157
|
+
}
|
|
4158
|
+
.xicms-header.is-open .xicms-header__nav { display: flex; }
|
|
4159
|
+
.xicms-header__menu .xicms-nav__list {
|
|
4160
|
+
flex-direction: column;
|
|
4161
|
+
align-items: stretch;
|
|
4162
|
+
gap: 0;
|
|
4163
|
+
text-align: left;
|
|
4164
|
+
}
|
|
4165
|
+
.xicms-header__menu .xicms-nav__item,
|
|
4166
|
+
.xicms-header__menu .xicms-nav__pair {
|
|
4167
|
+
width: 100%;
|
|
4168
|
+
}
|
|
4169
|
+
.xicms-header__menu .xicms-nav__link {
|
|
4170
|
+
display: block;
|
|
4171
|
+
padding: 0.8rem 0;
|
|
4172
|
+
font-size: 1.1rem;
|
|
4173
|
+
border-bottom: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.06));
|
|
4174
|
+
}
|
|
4175
|
+
.xicms-header__cta--in-menu {
|
|
4176
|
+
display: inline-flex;
|
|
4177
|
+
justify-content: center;
|
|
4178
|
+
}
|
|
4179
|
+
}
|
|
4180
|
+
|
|
4181
|
+
/* Mobiele balk onderaan (header.mobielBalk). */
|
|
4182
|
+
.xicms-mobielbalk { display: none; }
|
|
4183
|
+
@media (max-width: 720px) {
|
|
4184
|
+
.xicms-mobielbalk {
|
|
4185
|
+
position: fixed;
|
|
4186
|
+
inset: auto 0 0 0;
|
|
4187
|
+
z-index: 35;
|
|
4188
|
+
display: flex;
|
|
4189
|
+
gap: 0.5rem;
|
|
4190
|
+
padding: 0.6rem 0.75rem calc(0.6rem + env(safe-area-inset-bottom));
|
|
4191
|
+
background: var(--xicms-bg, #fff);
|
|
4192
|
+
border-top: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.08));
|
|
4193
|
+
box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.08);
|
|
4194
|
+
}
|
|
4195
|
+
.xicms-mobielbalk > * {
|
|
4196
|
+
flex: 1;
|
|
4197
|
+
justify-content: center;
|
|
4198
|
+
}
|
|
4199
|
+
.xicms-mobielbalk__bel {
|
|
4200
|
+
display: inline-flex;
|
|
4201
|
+
align-items: center;
|
|
4202
|
+
padding: 0.6rem 1rem;
|
|
4203
|
+
border-radius: var(--xicms-radius-sm, 8px);
|
|
4204
|
+
box-shadow: inset 0 0 0 1.5px currentColor;
|
|
4205
|
+
color: var(--xicms-primary);
|
|
4206
|
+
font-weight: 600;
|
|
4207
|
+
text-decoration: none;
|
|
4208
|
+
}
|
|
4209
|
+
body:has(.xicms-mobielbalk) { padding-bottom: 72px; }
|
|
4210
|
+
/* Tijdens bewerken staat de editorbalk daar. */
|
|
4211
|
+
:root:has(.xicms-ve__shell) .xicms-mobielbalk { display: none; }
|
|
4212
|
+
}
|
|
4213
|
+
|
|
4214
|
+
/* ── 8.13: prijslijst / menukaart ─────────────────────────────────────────────────────────── */
|
|
4215
|
+
.xicms-prijslijst {
|
|
4216
|
+
display: grid;
|
|
4217
|
+
gap: 1.5rem;
|
|
4218
|
+
margin: 1.5rem 0;
|
|
4219
|
+
}
|
|
4220
|
+
.xicms-prijslijst__kop {
|
|
4221
|
+
display: grid;
|
|
4222
|
+
gap: 0.4rem;
|
|
4223
|
+
}
|
|
4224
|
+
.xicms-prijslijst__intro {
|
|
4225
|
+
margin: 0;
|
|
4226
|
+
max-width: 60ch;
|
|
4227
|
+
opacity: 0.8;
|
|
4228
|
+
}
|
|
4229
|
+
.xicms-prijslijst__secties {
|
|
4230
|
+
display: grid;
|
|
4231
|
+
gap: 2rem;
|
|
4232
|
+
}
|
|
4233
|
+
.xicms-prijslijst[data-variant="kolommen"] .xicms-prijslijst__secties {
|
|
4234
|
+
grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
|
|
4235
|
+
gap: 2rem 3rem;
|
|
4236
|
+
}
|
|
4237
|
+
.xicms-prijslijst__sectietitel {
|
|
4238
|
+
margin: 0 0 0.25rem;
|
|
4239
|
+
font-family: var(--xicms-font-heading, inherit);
|
|
4240
|
+
font-size: 1.2rem;
|
|
4241
|
+
}
|
|
4242
|
+
.xicms-prijslijst__noot {
|
|
4243
|
+
margin: 0 0 0.5rem;
|
|
4244
|
+
font-size: 0.9rem;
|
|
4245
|
+
opacity: 0.7;
|
|
4246
|
+
}
|
|
4247
|
+
.xicms-prijslijst__regels {
|
|
4248
|
+
display: grid;
|
|
4249
|
+
gap: 0.15rem;
|
|
4250
|
+
margin: 0;
|
|
4251
|
+
padding: 0;
|
|
4252
|
+
list-style: none;
|
|
4253
|
+
}
|
|
4254
|
+
.xicms-prijslijst__regel {
|
|
4255
|
+
padding: 0.6rem 0;
|
|
4256
|
+
border-bottom: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.07));
|
|
4257
|
+
}
|
|
4258
|
+
.xicms-prijslijst__regel:last-child {
|
|
4259
|
+
border-bottom: 0;
|
|
4260
|
+
}
|
|
4261
|
+
.xicms-prijslijst__regel.is-uitgelicht .xicms-prijslijst__naam::after {
|
|
4262
|
+
content: " ★";
|
|
4263
|
+
color: var(--xicms-primary);
|
|
4264
|
+
}
|
|
4265
|
+
.xicms-prijslijst__lijn {
|
|
4266
|
+
display: flex;
|
|
4267
|
+
align-items: baseline;
|
|
4268
|
+
gap: 0.5rem;
|
|
4269
|
+
}
|
|
4270
|
+
.xicms-prijslijst__naam {
|
|
4271
|
+
font-weight: 600;
|
|
4272
|
+
}
|
|
4273
|
+
.xicms-prijslijst__puntjes {
|
|
4274
|
+
flex: 1;
|
|
4275
|
+
min-width: 1rem;
|
|
4276
|
+
border-bottom: 1.5px dotted color-mix(in srgb, currentColor 30%, transparent);
|
|
4277
|
+
transform: translateY(-0.25em);
|
|
4278
|
+
}
|
|
4279
|
+
.xicms-prijslijst__prijs {
|
|
4280
|
+
font-weight: 600;
|
|
4281
|
+
white-space: nowrap;
|
|
4282
|
+
font-variant-numeric: tabular-nums;
|
|
4283
|
+
}
|
|
4284
|
+
.xicms-prijslijst__details {
|
|
4285
|
+
display: flex;
|
|
4286
|
+
flex-wrap: wrap;
|
|
4287
|
+
align-items: center;
|
|
4288
|
+
gap: 0.25rem 0.75rem;
|
|
4289
|
+
margin-top: 0.2rem;
|
|
4290
|
+
font-size: 0.9rem;
|
|
4291
|
+
opacity: 0.8;
|
|
4292
|
+
}
|
|
4293
|
+
.xicms-prijslijst__duur::before {
|
|
4294
|
+
content: "◷ ";
|
|
4295
|
+
}
|
|
4296
|
+
.xicms-prijslijst__tag {
|
|
4297
|
+
padding: 0.05rem 0.5rem;
|
|
4298
|
+
border-radius: 999px;
|
|
4299
|
+
background: color-mix(in srgb, var(--xicms-primary, #4f46e5) 12%, transparent);
|
|
4300
|
+
color: var(--xicms-primary);
|
|
4301
|
+
font-size: 0.75rem;
|
|
4302
|
+
font-weight: 600;
|
|
4303
|
+
}
|
|
4304
|
+
.xicms-prijslijst__voetnoot {
|
|
4305
|
+
margin: 0;
|
|
4306
|
+
font-size: 0.85rem;
|
|
4307
|
+
opacity: 0.7;
|
|
4308
|
+
}
|
|
4309
|
+
/* Menu: gecentreerd, in de koppenletter, zonder puntjes. */
|
|
4310
|
+
.xicms-prijslijst[data-variant="menu"] {
|
|
4311
|
+
max-width: 680px;
|
|
4312
|
+
margin-inline: auto;
|
|
4313
|
+
text-align: center;
|
|
4314
|
+
}
|
|
4315
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__intro { margin-inline: auto; }
|
|
4316
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__sectietitel {
|
|
4317
|
+
font-size: 1.4rem;
|
|
4318
|
+
letter-spacing: 0.02em;
|
|
4319
|
+
}
|
|
4320
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__regel { border-bottom: 0; }
|
|
4321
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__lijn,
|
|
4322
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__details {
|
|
4323
|
+
justify-content: center;
|
|
4324
|
+
}
|
|
4325
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__puntjes { display: none; }
|
|
4326
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__naam {
|
|
4327
|
+
font-family: var(--xicms-font-heading, inherit);
|
|
4328
|
+
font-size: 1.1rem;
|
|
4329
|
+
}
|
|
4330
|
+
.xicms-prijslijst[data-variant="menu"] .xicms-prijslijst__prijs::before { content: "· "; opacity: 0.5; }
|
|
4331
|
+
|
|
4332
|
+
/* ── 8.13: hero "naast" (tekst links, foto rechts) en vertrouwenspunten ─────────────────────── */
|
|
4333
|
+
.xicms-hero[data-layout="naast"] {
|
|
4334
|
+
display: grid;
|
|
4335
|
+
grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
|
|
4336
|
+
align-items: center;
|
|
4337
|
+
gap: clamp(1.5rem, 4vw, 4rem);
|
|
4338
|
+
}
|
|
4339
|
+
.xicms-hero[data-layout="naast"] .xicms-hero__inner {
|
|
4340
|
+
max-width: none;
|
|
4341
|
+
}
|
|
4342
|
+
.xicms-hero__beeld {
|
|
4343
|
+
overflow: hidden;
|
|
4344
|
+
aspect-ratio: 5 / 4;
|
|
4345
|
+
border-radius: var(--xicms-radius-lg, 24px);
|
|
4346
|
+
}
|
|
4347
|
+
.xicms-hero__beeld img {
|
|
4348
|
+
display: block;
|
|
4349
|
+
width: 100%;
|
|
4350
|
+
height: 100%;
|
|
4351
|
+
object-fit: cover;
|
|
4352
|
+
}
|
|
4353
|
+
@media (max-width: 900px) {
|
|
4354
|
+
.xicms-hero[data-layout="naast"] { grid-template-columns: 1fr; }
|
|
4355
|
+
}
|
|
4356
|
+
.xicms-hero__trust {
|
|
4357
|
+
display: flex;
|
|
4358
|
+
flex-wrap: wrap;
|
|
4359
|
+
gap: 0.4rem 1.25rem;
|
|
4360
|
+
margin: 1.25rem 0 0;
|
|
4361
|
+
padding: 0;
|
|
4362
|
+
list-style: none;
|
|
4363
|
+
font-size: 0.95rem;
|
|
4364
|
+
}
|
|
4365
|
+
.xicms-hero[data-align="center"] .xicms-hero__trust { justify-content: center; }
|
|
4366
|
+
.xicms-hero__trust li::before {
|
|
4367
|
+
content: "✓ ";
|
|
4368
|
+
color: var(--xicms-primary);
|
|
4369
|
+
font-weight: 700;
|
|
4370
|
+
}
|
|
4371
|
+
.xicms-hero[data-media="cover"] .xicms-hero__trust li::before { color: inherit; }
|
|
4372
|
+
|
|
4373
|
+
/* ── 8.13: sectiekop ───────────────────────────────────────────────────────────────────────── */
|
|
4374
|
+
.xicms-sectiekop {
|
|
4375
|
+
display: grid;
|
|
4376
|
+
gap: 0.5rem;
|
|
4377
|
+
margin: 2.5rem 0 1rem;
|
|
4378
|
+
}
|
|
4379
|
+
.xicms-sectiekop[data-align="center"] {
|
|
4380
|
+
justify-items: center;
|
|
4381
|
+
text-align: center;
|
|
4382
|
+
}
|
|
4383
|
+
.xicms-sectiekop__regel {
|
|
4384
|
+
margin: 0;
|
|
4385
|
+
color: var(--xicms-primary);
|
|
4386
|
+
font-size: 0.8rem;
|
|
4387
|
+
font-weight: 700;
|
|
4388
|
+
letter-spacing: 0.12em;
|
|
4389
|
+
text-transform: uppercase;
|
|
4390
|
+
}
|
|
4391
|
+
.xicms-sectiekop__intro {
|
|
4392
|
+
margin: 0;
|
|
4393
|
+
max-width: 60ch;
|
|
4394
|
+
font-size: 1.1rem;
|
|
4395
|
+
opacity: 0.8;
|
|
4396
|
+
}
|
|
4397
|
+
|
|
4398
|
+
.xicms-footer__column--bedrijf .xicms-footer__links + .xicms-footer__heading {
|
|
4399
|
+
margin-top: 1.25rem;
|
|
4400
|
+
}
|
|
4401
|
+
|
|
4402
|
+
/* 8.14: formulierveld "periode" (van – tot). */
|
|
4403
|
+
.xicms-form__periode {
|
|
4404
|
+
display: grid;
|
|
4405
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
4406
|
+
gap: 0.5rem 0.75rem;
|
|
4407
|
+
margin: 0;
|
|
4408
|
+
padding: 0;
|
|
4409
|
+
border: 0;
|
|
4410
|
+
}
|
|
4411
|
+
.xicms-form__periode legend {
|
|
4412
|
+
grid-column: 1 / -1;
|
|
4413
|
+
margin-bottom: 0.3rem;
|
|
4414
|
+
}
|
|
4415
|
+
|
|
4416
|
+
/* 8.14: agenda — status en prijs. */
|
|
4417
|
+
.xicms-agenda__status {
|
|
4418
|
+
display: inline-block;
|
|
4419
|
+
margin-right: 0.5rem;
|
|
4420
|
+
padding: 0.05rem 0.5rem;
|
|
4421
|
+
border-radius: 999px;
|
|
4422
|
+
font-size: 0.75rem;
|
|
4423
|
+
font-weight: 700;
|
|
4424
|
+
background: color-mix(in srgb, var(--xicms-danger-fg, #b91c1c) 14%, transparent);
|
|
4425
|
+
color: var(--xicms-danger-fg, #b91c1c);
|
|
4426
|
+
}
|
|
4427
|
+
.xicms-agenda__status[data-status="verplaatst"] {
|
|
4428
|
+
background: color-mix(in srgb, var(--xicms-warning-fg, #b45309) 14%, transparent);
|
|
4429
|
+
color: var(--xicms-warning-fg, #b45309);
|
|
4430
|
+
}
|
|
4431
|
+
.xicms-agenda__prijs {
|
|
4432
|
+
margin-left: 0.5rem;
|
|
4433
|
+
font-weight: 600;
|
|
4434
|
+
}
|
|
4435
|
+
|
|
4436
|
+
/* ── 8.15: beschikbaarheidskalender ──────────────────────────────────────────────────────── */
|
|
4437
|
+
.xicms-beschikbaar {
|
|
4438
|
+
display: grid;
|
|
4439
|
+
gap: 1rem;
|
|
4440
|
+
margin: 1.5rem 0;
|
|
4441
|
+
}
|
|
4442
|
+
.xicms-beschikbaar__intro,
|
|
4443
|
+
.xicms-beschikbaar__noot { margin: 0; opacity: 0.85; }
|
|
4444
|
+
.xicms-beschikbaar__melding {
|
|
4445
|
+
margin: 0;
|
|
4446
|
+
padding: 0.6rem 0.9rem;
|
|
4447
|
+
border-radius: var(--xicms-radius-sm, 8px);
|
|
4448
|
+
background: color-mix(in srgb, var(--xicms-warning-fg, #b45309) 10%, transparent);
|
|
4449
|
+
font-size: 0.9rem;
|
|
4450
|
+
}
|
|
4451
|
+
.xicms-beschikbaar__tabs { display: flex; flex-wrap: wrap; gap: 0.4rem; }
|
|
4452
|
+
.xicms-beschikbaar__tabs button {
|
|
4453
|
+
padding: 0.45rem 0.9rem;
|
|
4454
|
+
border: 1px solid var(--xicms-border, rgba(0, 0, 0, 0.12));
|
|
4455
|
+
border-radius: 999px;
|
|
4456
|
+
background: transparent;
|
|
4457
|
+
color: inherit;
|
|
4458
|
+
font: inherit;
|
|
4459
|
+
cursor: pointer;
|
|
4460
|
+
}
|
|
4461
|
+
.xicms-beschikbaar__tabs button[aria-selected="true"] {
|
|
4462
|
+
background: var(--xicms-primary);
|
|
4463
|
+
border-color: var(--xicms-primary);
|
|
4464
|
+
color: var(--xicms-on-primary, #fff);
|
|
4465
|
+
}
|
|
4466
|
+
.xicms-beschikbaar__maanden {
|
|
4467
|
+
display: grid;
|
|
4468
|
+
grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));
|
|
4469
|
+
gap: 1.25rem 2rem;
|
|
4470
|
+
}
|
|
4471
|
+
.xicms-beschikbaar__maandnaam {
|
|
4472
|
+
margin: 0 0 0.4rem;
|
|
4473
|
+
font-weight: 600;
|
|
4474
|
+
text-transform: capitalize;
|
|
4475
|
+
}
|
|
4476
|
+
.xicms-beschikbaar table { width: 100%; border-collapse: collapse; table-layout: fixed; }
|
|
4477
|
+
.xicms-beschikbaar th { font-size: 0.7rem; font-weight: 600; opacity: 0.6; text-transform: uppercase; padding-bottom: 0.2rem; }
|
|
4478
|
+
.xicms-beschikbaar td { padding: 1px; text-align: center; }
|
|
4479
|
+
.xicms-beschikbaar td button {
|
|
4480
|
+
width: 100%;
|
|
4481
|
+
aspect-ratio: 1;
|
|
4482
|
+
max-height: 40px;
|
|
4483
|
+
border: 0;
|
|
4484
|
+
border-radius: 6px;
|
|
4485
|
+
background: color-mix(in srgb, var(--xicms-success-fg, #15803d) 12%, transparent);
|
|
4486
|
+
color: inherit;
|
|
4487
|
+
font: inherit;
|
|
4488
|
+
font-size: 0.85rem;
|
|
4489
|
+
cursor: pointer;
|
|
4490
|
+
}
|
|
4491
|
+
.xicms-beschikbaar td button[data-status="bezet"] {
|
|
4492
|
+
background: color-mix(in srgb, currentColor 10%, transparent);
|
|
4493
|
+
text-decoration: line-through;
|
|
4494
|
+
opacity: 0.55;
|
|
4495
|
+
cursor: not-allowed;
|
|
4496
|
+
}
|
|
4497
|
+
.xicms-beschikbaar td button[data-status="voorbij"] { background: transparent; opacity: 0.3; cursor: default; }
|
|
4498
|
+
.xicms-beschikbaar td button[data-gekozen="1"] {
|
|
4499
|
+
background: var(--xicms-primary);
|
|
4500
|
+
color: var(--xicms-on-primary, #fff);
|
|
4501
|
+
opacity: 1;
|
|
4502
|
+
text-decoration: none;
|
|
4503
|
+
}
|
|
4504
|
+
.xicms-beschikbaar td button:focus-visible { outline: 2px solid var(--xicms-primary); outline-offset: 1px; }
|
|
4505
|
+
.xicms-beschikbaar__voet {
|
|
4506
|
+
display: flex;
|
|
4507
|
+
flex-wrap: wrap;
|
|
4508
|
+
align-items: center;
|
|
4509
|
+
gap: 0.75rem 1.5rem;
|
|
4510
|
+
}
|
|
4511
|
+
.xicms-beschikbaar__legenda { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.85rem; opacity: 0.8; }
|
|
4512
|
+
.xicms-beschikbaar__legenda i { display: inline-block; width: 0.9rem; height: 0.9rem; border-radius: 3px; background: color-mix(in srgb, var(--xicms-success-fg, #15803d) 25%, transparent); }
|
|
4513
|
+
.xicms-beschikbaar__legenda i[data-status="bezet"] { background: color-mix(in srgb, currentColor 18%, transparent); margin-left: 0.5rem; }
|
|
4514
|
+
.xicms-beschikbaar__keuze { flex: 1; font-weight: 500; }
|