:root { --font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Cantarell, Roboto, Oxygen, Ubuntu, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; --font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace; --accent-color-dark: #1971c2; --accent-color-light: #d0ebff; --text-color: #212529; --border-color: rgba(0,0,0,0.15); --hover-color: rgba(0,0,0,0.05); --background-color: #f8f9fa; --well-color: #e9ecef; --accent-color: var(--accent-color-dark); --accent-color-back: var(--accent-color-light); --border-radius: 6px; } @media (prefers-color-scheme: dark) { :root { --text-color: #e9ecef; --background-color: #212529; --well-color: #343a40; --accent-color: var(--accent-color-light); --accent-color-back: var(--accent-color-dark); --border-color: rgba(255,255,255,0.2); --hover-color: rgba(255,255,255,0.1); } } html { font-family: var(--font-family); text-align: left; font-size: 17px; background-color: var(--background-color); accent-color: var(--accent-color); line-height: 1.6rem; } body { color: var(--text-color); font-weight: 400; max-width: 800px; padding:1rem; margin: auto; } nav ul { display: flex; flex-wrap: wrap; padding: .5rem 0; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); li { list-style-type: none; margin:0; a, span { padding: .5rem; } } } // Typography p, h1, h2, h3, h4, h5, h6, ul, ol, hr, table, details main, .p, input, textarea, select, hgroup, article { padding: 0; margin: 0 0 1rem 0; } p { &:last-child { margin-bottom:0; } } a { color: var(--accent-color); text-decoration:none; border-radius: 3px; padding: 1px; &:hover { background-color: var(--hover-color); } } :is(ul, ol) > :is(ul, ol) { margin-bottom:0; } li { margin-left: 1rem; } ::selection, ::-moz-selection { background: var(--accent-color-back); color: var(--text-color); } hr { border:0; border-bottom: 1px solid var(--border-color); } code, mark { background-color:var(--well-color); padding: 5px; border-radius: 3px; } mark { background-color: var(--accent-color-back); color:currentColor; } pre, code { font-family: var(--font-family-monospace); } /* ------------------ TITLES ------------------- */ hgroup > :is(h1, h2, h3, h4, h5, h6) { margin-bottom: 0; } hgroup { font-weight: 700; } h1, h2, h3, h4, h5, h6 { text-align: left; line-height: 1; font-weight:700; } h1 { font-size: 3rem; } h2 { font-size: 2.33rem; } h3 { font-size: 1.75rem; } h4 { font-size: 1.5rem; } h5 { font-size: 1.25rem; } h6 { font-size: 1rem; font-weight: 800; } /* ------------------ HR ------------------- */ /* ------------------ blocks ------------------- */ blockquote, pre, details { border: 0; border-radius: 6px; margin: 0 0 1rem 0; padding: .75rem; max-width: 100%; background-color: var(--well-color); border: 0; border-left: 6px solid var(--accent-color); } pre code { padding: 0; } summary { font-weight: 700; font-size: 0.9em; &:hover { background-color: var(--hover-color); } } .toolbar-end { margin-left: auto; } /* ------------------ INPUT ------------------- */ a, button, input { outline-color: var(--accent-color); outline-style: none; outline-width: 2px; &:focus-visible { outline-style: dashed; } } input, textarea, select { display:block; background-color: var(--background-color); border-radius: var(--border-radius); border: 1px solid var(--border-color); outline-offset: 2px; padding: .5rem; color: var(--text-color); &:hover { background-color: var(--hover-color); } } label { font-size: .9rem; font-weight: bolder; } textarea { width: 100%; margin-bottom: 1rem; } input[type=checkbox], input[type=radio] { display: inline-block; appearance: none; aspect-ratio: 1; font-size: 1rem; height:1em; width:1em; box-sizing: border-box; line-height: 1; padding:0; margin: 0 .25em; border-radius: 3px; border: 1px solid var(--border-color); content: ""; position: relative; top: .1rem; &:checked { background-color: var(--accent-color); box-shadow:inset 0px 0px 0px 3px var(--background-color); } &:hover { filter:brightness(.9); } } input[type=radio] { border-radius: 9999px; } button, .button, input[type=submit], input[type=reset], input[type=button] { background-color: var(--accent-color); color: var(--background-color); border: none; padding: .5rem 1rem; border-radius: var(--border-radius); outline-offset: 2px; display: inline-block; &:hover { background-color: var(--accent-color); outline-style: solid; } } /* ------------------ SPECIAL STYLING ------------------- */ .flex { display: flex; flex-wrap: wrap; justify-content: space-between; }