/** * Global Application Styles * Heritage Custodian Ontology Visualization * Following Netwerk Digitaal Erfgoed (NDE) house style * * NDE Brand Colors: * - Primary Blue: #0a3dfa * - Dark Blue: #172a59 (primary text) * - Orange Accent: #fa5200 (highlights) * - Light Gray: #f6f6f6 (backgrounds) * * NDE Typography: * - Headings: Poppins (400, 500, 600) * - Body: Roboto (400, 500, 700) */ /* Import NDE fonts */ @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&family=Roboto:wght@400;500;700&display=swap'); * { box-sizing: border-box; } html { height: 100%; margin: 0; padding: 0; } body { height: 100%; margin: 0; padding: 0; font-family: 'Roboto', Helvetica, Arial, sans-serif; /* NDE body font */ font-size: 1rem; font-weight: 400; line-height: 1.5; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background: #f6f6f6; /* NDE light background */ color: #172a59; /* NDE dark blue text */ } #root { height: 100%; display: flex; flex-direction: column; position: relative; } /* NDE-style faded sunburst rays background */ #root::before { content: ''; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-image: url('/nde-icon-square.png'); background-repeat: no-repeat; background-position: -20vw 30vh; background-size: 80vw auto; opacity: 0.04; pointer-events: none; z-index: 0; } /* Ensure all content appears above the sunburst */ #root > * { position: relative; z-index: 1; } code { font-family: 'Courier New', Courier, monospace; background: rgba(10, 61, 250, 0.05); padding: 0.2em 0.4em; border-radius: 3px; font-size: 0.9em; } h1, h2, h3, h4, h5, h6 { margin: 0; font-family: 'Poppins', Helvetica, Arial, sans-serif; /* NDE heading font */ color: #172a59; /* NDE dark blue */ line-height: 1.3em; } h1 { font-size: clamp(1.5rem, 2vw + 1rem, 2.5rem); font-weight: 500; } h2 { font-size: clamp(1.25rem, 1.5vw + 0.75rem, 2rem); font-weight: 500; } h3 { font-size: clamp(1.1rem, 1vw + 0.5rem, 1.5rem); font-weight: 500; } h4 { font-size: clamp(1rem, 0.75vw + 0.5rem, 1.25rem); font-weight: 500; } p { margin: 0; color: #172a59; font-size: 1rem; line-height: 1.6; } a { color: #0a3dfa; /* NDE primary blue */ text-decoration: underline; transition: color 0.2s ease-in-out; } a:hover { color: #172a59; /* NDE dark blue */ } strong { font-weight: 500; color: #172a59; } /* NDE Button Styles */ button { font-family: 'Poppins', Helvetica, Arial, sans-serif; font-size: 0.9375rem; font-weight: 400; padding: 0.75rem 1.25rem; border-radius: 4px; border: none; cursor: pointer; transition: all 0.2s ease-in-out; } button.primary { background-color: #0a3dfa; /* NDE primary blue */ color: white; } button.primary:hover { background-color: #172a59; /* NDE dark blue */ } button.secondary { background-color: #f6f6f6; color: #172a59; } button.secondary:hover { background-color: #ebefff; /* Light blue */ } button.accent { background-color: #fa5200; /* NDE orange */ color: white; } button.accent:hover { background-color: #0a3dfa; /* NDE blue */ } /* Scrollbar Styling (WebKit browsers) with NDE colors */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: #f6f6f6; /* NDE light gray */ } ::-webkit-scrollbar-thumb { background: rgba(10, 61, 250, 0.3); /* Semi-transparent NDE blue */ border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #0a3dfa; /* NDE primary blue */ } /* Responsive Typography */ @media (max-width: 768px) { body { font-size: 0.9375rem; } button { padding: 0.625rem 1rem; font-size: 0.875rem; } } @media (max-width: 480px) { body { font-size: 0.875rem; } button { padding: 0.5rem 0.875rem; font-size: 0.8125rem; } }