:root { color-scheme: light dark; --color-super-lowered: oklch(87.1% 0.006 286.286); --color-lowered: oklch(96.7% 0.001 286.375); --color-surface: oklch(92.9% 0.013 255.508); --color-raised: oklch(98.4% 0.003 247.858); --color-super-raised: oklch(96.8% 0.007 247.896); --color-text: hsl(0, 0%, 5%); --color-link: #2949b2; --color-shadow: rgba(0, 0, 0, 0.08); --color-red: hsl(0, 84%, 40%); --color-green: hsl(100, 84%, 20%); --color-yellow: oklch(47% 0.157 37.304); --color-purple: hsl(284, 84%, 20%); --shadow-x-offset: 0; --shadow-y-offset: 0.125rem; --shadow-size: var(--pad-1); --pad-1: 0.2rem; --pad-2: 0.35rem; --pad-3: 0.5rem; --pad-4: 1rem; --radius: 0.2rem; --nav-height: 36px; } * { margin: 0; padding: 0; box-sizing: border-box; font-size: 16px; } .dark, .dark * { --color-super-lowered: var(--color-super-raised); --color-lowered: var(--color-raised); --color-surface: oklch(21% 0.006 285.885); --color-raised: oklch(27.4% 0.006 286.033); --color-super-raised: oklch(37% 0.013 285.805); --color-text: hsl(0, 0%, 95%); --color-link: #93c5fd; --color-red: hsl(0, 94%, 82%); --color-green: hsl(100, 94%, 82%); --color-yellow: oklch(90.1% 0.076 70.697); --color-purple: hsl(284, 94%, 82%); } html, body { line-height: 1.5; letter-spacing: 0.15px; font-family: "Inter", "Poppins", "Roboto", ui-sans-serif, -apple-system, BlinkMacSystemFont, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; color: var(--color-text); background: var(--color-surface); overflow: auto auto; height: 100dvh; scroll-behavior: smooth; overflow-x: hidden; } main { width: 80ch; margin: var(--pad-4) auto; padding: var(--pad-3) var(--pad-4); } article { margin: var(--pad-2) 0; height: calc(100dvh - var(--pad-4) - var(--nav-height) * 2); } .tab { flex: 1 0 auto; overflow: auto; } .tabs .tab { height: 100%; } .fadein { animation: fadein ease-in-out 1 0.5s forwards running; } nav { /* background: var(--color-raised); */ height: var(--nav-height); /* position: sticky; z-index: 2; top: 2; */ } @media screen and (max-width: 900px) { main, article, nav, header, footer { width: 100%; } article { margin-top: 0; } main { padding: 0; } .flex-collapse-rev { flex-direction: column-reverse !important; } } .container:not(#preview_tab):not(#tabs_group) { margin: 10px auto 0; width: 100%; } .content_container { margin: 0 auto var(--pad-2); width: 100%; } @media screen and (min-width: 500px) { .content_container { max-width: 540px; } } @media (min-width: 768px) { .content_container { max-width: 720px; } } @media (min-width: 900px) { .content_container { max-width: 960px; } @media (min-width: 1200px) { article { padding: 0; } .content_container { max-width: 1100px; } } } video { max-width: 100%; border-radius: var(--radius); } /* card */ .card { padding: var(--pad-4); background: var(--color-raised); color: var(--color-text); } /* button */ .button { --h: 36px; display: flex; justify-content: center; align-items: center; gap: var(--pad-2); padding: var(--pad-2) calc(var(--pad-3) * 1.5); cursor: pointer; background: var(--color-raised); color: var(--color-text); outline: none; border: none; width: max-content; height: var(--h); line-height: var(--h); transition: background 0.15s; text-decoration: none !important; user-select: none; appearance: none; } .button.small { --h: 28px; } .button:not(:has(.button:hover)):not(.camo):hover { background: var(--color-super-raised); } .button.camo { background: transparent; color: inherit; } .bar .button:not(.simple).camo:hover { color: var(--color-link); } .button.simple { --size: 18px; font-weight: 600; padding: var(--pad-2) !important; border-radius: var(--radius); width: var(--size); height: var(--size); aspect-ratio: 1 / 1; font-size: 12px; } .button.surface { background: var(--color-surface); } .button.surface.simple:is(.camo *) { background: var(--color-super-raised); } /* dropdown */ .dropdown { position: relative; } .dropdown .inner { display: none; flex-direction: column; box-shadow: var(--shadow-x-offset) var(--shadow-y-offset) var(--shadow-size) var(--color-shadow); background: var(--color-raised); color: inherit; position: absolute; z-index: 2; top: 100%; } .dropdown .inner.open { display: flex; } .dropdown .inner .button { padding: var(--pad-3) var(--pad-4); justify-content: flex-start; width: 100%; } .dropdown:has(.inner.open) .button:nth-child(1):not(.inner *) { background: var(--color-raised); } .dropdown .inner.top { top: unset; bottom: 100%; } .dropdown .inner.left { left: 0; right: unset; } /* input */ input { --h: 36px; padding: var(--pad-2) calc(var(--pad-3) * 1.5); background: var(--color-raised); color: var(--color-text); outline: none; border: none; width: max-content; transition: background 0.15s, border 0.15s; height: var(--h); line-height: var(--h); border-left: solid 0px transparent; } input:focus { outline: solid 2px var(--color-primary); box-shadow: 0 0 0 4px oklch(87% 0.065 274.039 / 25%); background: var(--color-super-raised); } input:user-invalid, input[data-invalid] { border-left: inset 5px var(--color-red); } /* typo */ p { margin-bottom: var(--pad-4); } p:last-child { margin-bottom: 0; } .post_right:not(.repost) { max-width: calc(100% - 52px); } .rhs { width: 100% !important; } .name { max-width: 250px; overflow: hidden; /* overflow-wrap: break-word; */ overflow-wrap: anywhere; text-overflow: ellipsis; } @media screen and (min-width: 901px) { .name.shorter { max-width: 200px; } .name.lg\:long { max-width: unset; } .rhs { width: calc(100% - 23rem) !important; } } ul, ol { margin-left: var(--pad-4); } pre { padding: var(--pad-2) var(--pad-4); border-left: solid 5px var(--color-primary); background: var(--color-surface); border-radius: var(--radius); } code { padding: 0; } pre, code { font-family: "Jetbrains Mono", "Fire Code", monospace; width: 100%; max-width: 100%; overflow: auto; border-radius: var(--radius); font-size: 0.8rem !important; color: inherit; } code * { font-size: 0.8rem !important; } code:not(pre *) { padding: var(--pad-1) var(--pad-2); background: oklch(98% 0.016 73.684 / 25%); color: oklch(90.1% 0.076 70.697); border-radius: var(--radius); white-space: break-spaces; } code:not(pre *):not(.dark *) { background: oklch(83.7% 0.128 66.29 / 25%); color: oklch(47% 0.157 37.304); } svg.icon { stroke: currentColor; fill: currentColor; width: 18px; height: 1em; } svg.icon.filled { fill: currentColor; } .no_fill svg.icon { fill: transparent; } button svg { pointer-events: none; } hr { border-top: solid 1px var(--color-super-lowered) !important; border-left: 0; border-bottom: 0; border-right: 0; } hr.margin { margin: var(--pad-4) 0; } span.img_sizer { display: inline-block; } p, li, span, code { max-width: 100%; overflow-wrap: normal; text-wrap: stable; word-wrap: break-word; } h1 { font-size: 2rem; } h2 { font-size: 1.75rem; } h3 { font-size: 1.5rem; } h4 { font-size: 1.25rem; } h5 { font-size: var(--pad-4); } h6 { font-size: var(--pad-3); } h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 700; width: -moz-max-content; position: relative; max-width: 100%; } h1 { text-align: center; margin: 2rem 0; width: 100%; } a { text-decoration: none; color: var(--color-link); } .color_block a { color: inherit; } a.flush { color: inherit; } a:hover { text-decoration: underline; } img { display: inline; max-width: 100%; vertical-align: middle; } blockquote { padding-left: 1rem; border-left: solid 5px var(--color-green); color: var(--color-green); opacity: 75%; } /* codemirror/hljs */ .CodeMirror { color: var(--color-text) !important; } .CodeMirror { background: transparent !important; font-family: inherit !important; height: 10rem !important; min-height: 100%; max-height: 100%; cursor: text; } .CodeMirror-cursor { border-color: rgb(0, 0, 0) !important; } .CodeMirror-cursor:is(.dark *) { border-color: rgb(255, 255, 255) !important; } .CodeMirror-cursor { height: 22px !important; } [role="presentation"]::-moz-selection, [role="presentation"] *::-moz-selection { background-color: rgb(191, 219, 254) !important; } [role="presentation"]::selection, [role="presentation"] *::selection, .CodeMirror-selected { background-color: rgb(191, 219, 254) !important; } [role="presentation"]:is(.dark *)::-moz-selection, [role="presentation"] *:is(.dark *)::-moz-selection { background-color: rgb(64, 64, 64) !important; } [role="presentation"]:is(.dark *)::selection, [role="presentation"] *:is(.dark *)::selection, .CodeMirror-selected:is(.dark *) { background-color: rgb(64, 64, 64) !important; } .cm-header { color: inherit !important; } .cm-variable-2, .cm-quote, .cm-keyword, .cm-string, .cm-atom, .hljs-string { color: rgb(63, 98, 18) !important; } .cm-variable-2:is(.dark *), .cm-quote:is(.dark *), .cm-keyword:is(.dark *), .cm-string:is(.dark *), .cm-atom:is(.dark *), .hljs-string:is(.dark *) { color: rgb(217, 249, 157) !important; } .cm-comment, .hljs-keyword { color: oklch(47% 0.157 37.304) !important; } .cm-comment:is(.dark *), .hljs-keyword:is(.dark *) { color: oklch(90.1% 0.076 70.697) !important; } .cm-link { color: var(--color-link) !important; } .cm-url, .cm-property, .cm-qualifier, .hljs-title { color: rgb(29, 78, 216) !important; } .cm-url:is(.dark *), .cm-property:is(.dark *), .cm-qualifier:is(.dark *), .hljs-title:is(.dark *) { color: rgb(191, 219, 254) !important; } .cm-variable-3, .cm-tag, .cm-def, .cm-attribute, .cm-number, .hljs-type { color: rgb(91, 33, 182) !important; } .cm-variable-3:is(.dark *), .cm-tag:is(.dark *), .cm-def:is(.dark *), .cm-attribute:is(.dark *), .cm-number:is(.dark *), .hljs-type:is(.dark *) { color: rgb(221, 214, 254) !important; } .hljs-built_in { color: var(--color-purple) !important; } .hljs-variable { color: var(--color-link) !important; } .hljs-number { color: var(--color-green) !important; } .CodeMirror-scroll { height: 100% !important; } .CodeMirror-line { padding-left: 0 !important; } .CodeMirror-focused .CodeMirror-placeholder { opacity: 50%; } .hljs { background: transparent !important; color: inherit !important; padding: 0 !important; } /* extra */ @keyframes fadein { from { opacity: 0%; } to { opacity: 100%; } } .items-end { align-items: flex-end; } /* table */ table { width: 100%; table-layout: auto; margin: var(--pad-4) 0; border-collapse: separate; border-spacing: 0; border: solid 1px var(--color-super-raised); } table td, table th { padding: var(--pad-2) var(--pad-4); } table tr:not(thead *):nth-child(odd) { background: var(--color-super-raised); } table thead th { text-align: left; }