/* BASE */ ::placeholder { color: var(--color-dark); opacity: 0.8; } ::selection { color: var(--color-light-blue); background-color: var(--color-dark-blue); } ::marker { color: var(--color-brique); } body { font-family: var(--font-primary); font-size: var(--size-0); line-height: 1.4; color: var(--color-dark); background-color: var(--color-light-white); accent-color: var(--color-brique); } main { min-block-size: 100vh; } :where(h1, h2, h3, .h2, .h3) { font-family: var(--font-secondary); } :where(h1) { max-inline-size: 20ch; font-size: var(--size-6); font-weight: bold; color: var(--color-dark-blue); } h2, .h2 { font-size: var(--size-4); font-weight: bold; } h3, .h3 { max-inline-size: initial; font-size: var(--size-2); font-weight: bold; letter-spacing: 0.05rem; } h4, .h4 { font-size: var(--size-2); font-weight: bold; color: var(--color-dark); } h5, .h5 { font-size: var(--size-1); color: var(--color-darkBlue); } a { font-weight: 500; color: var(--color-blue); text-decoration: underline; } a:visited { color: currentColor; } a:hover, a:focus { text-decoration: none; } hr { margin-block: var(--space-m-l); block-size: 4px; background-color: var(--color-dark); } hr.small { margin-block: var(--space-xs); block-size: 2px; } ul:not([role="list"]), ol:not([role="list"]) { padding-inline-start: 1rem; } ul:not([role="list"]) > li + li, ol:not([role="list"]) > li + li { margin-block-start: var(--space-xs); } .sr-only { clip: rect(0 0 0 0); clip-path: inset(50%); block-size: 1px; overflow: hidden; position: absolute; white-space: nowrap; inline-size: 1px; } .clean-button { appearance: none; -webkit-appearance: none; cursor: pointer; border: none; background: none; } .btn { padding: var(--space-xs) var(--space-s); margin-block: var(--space-s); display: inline-block; font-size: var(--size--1); font-weight: bold; text-decoration: none; border: 2px solid var(--color-red); border-radius: 14px; color: var(--color-red); background-color: transparent; transition-property: color, background-color; transition-duration: 0.2s; transition-timing-function: ease-in-out; } .btn:hover { color: var(--color-light); background-color: var(--color-red); } .reset-button { padding: var(--space-3xs) var(--space-2xs); /* margin-inline-start: auto; */ font-size: var(--size--1); color: var(--color-light); border: 1px solid transparent; background-color: var(--color-dark); border-radius: var(--radius); } .reset-button:not([disabled]):hover { color: var(--color-dark); border: 1px solid var(--color-dark); background-color: var(--color-white); } button[disabled] { cursor: not-allowed; color: var(--color-grey-dark); border-color: var(--color-grey); background-color: var(--color-white); } .highlight { color: var(--color-blue); } /* clean style link */ .clean-link { text-decoration: none; font-weight: normal; color: currentColor; } .clean-link:hover { text-decoration: none; } /* nice hover link */ .nice-link { position: relative; display: inline-block; text-align: center; text-decoration: none; } .nice-link:hover { text-decoration: none; } .nice-link::after { content: ""; position: absolute; left: 0; bottom: -2px; inline-size: 100%; block-size: 2px; text-decoration: none; transform: scaleX(0); opacity: 1; transform-origin: 100% 50%; background-color: var(--color-brique); } .nice-link:hover::after { transform: scaleX(1); transform-origin: 0% 50%; } @media (prefers-reduced-motion: no-preference) { .nice-link::after { transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1); } } /* blockquote */ blockquote { margin: var(--space-s) 0; padding: var(--space-s); font-weight: normal; line-height: 1.4; border-left: 3px solid var(--color-blue); border-radius: 3px; background-color: var(--color-soft-blue); } blockquote cite { font-weight: normal; font-style: normal; font-size: var(--size-0); line-height: 1.2; } blockquote code { font-weight: bold; } /* code highlight */ .content :not(pre) > code { padding: var(--space-3xs) var(--space-2xs); position: relative; display: inline-block; font-size: var(--size--1); font-family: var(--font-code); } .content :not(pre) > code:before { content: ""; position: absolute; inset: 0px -1px; background: var(--color-light-grey); border-radius: 4px; z-index: -1; } .content code[class*="language-"], .content pre[class*="language-"] { white-space: pre-wrap; } /* .astro-code .filename { margin: 0.5rem 0; display: block; font-family: var(--font-code); font-size: 1.4rem; text-align: right; } */