Skip to content

Instantly share code, notes, and snippets.

@OroshiX
Last active July 26, 2021 10:44
Show Gist options
  • Save OroshiX/27e64d48fd287abcb3616a066723f59f to your computer and use it in GitHub Desktop.
Save OroshiX/27e64d48fd287abcb3616a066723f59f to your computer and use it in GitHub Desktop.
A theme for Obsidian
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,400;0,500;1,400;1,500&family=Karla:ital,wght@0,400;0,600;1,400;1,600&family=Rubik:ital,wght@0,400;0,600;1,400;1,600&family=Jomhuria&family=Source+Code+Pro:wght@200;300;400&family=Fira+Mono:wght@400;500;700&display=swap");
/* latin
@font-face {
font-family: 'Jomhuria';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(https://fonts.gstatic.com/s/jomhuria/v9/Dxxp8j-TMXf-llKur1byOuA.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}*/
:root
{
--dark0: hsl(219, 38%, 21%);
--dark1: hsl(219, 37%, 36%);
--dark2: hsl(220, 22%, 51%);
--dark3: hsl(221, 22%, 55%);
--background1: hsl(219, 10%, 20%);
--background2: hsl(219, 13%, 30%);
--background3: #1d2026;
--background4: #1f2433;
--theme-color: #3187d3;
--h1-outline-color: #d50764;
--list-ol-marker-color: #8ac2d6;
--light0: #d8dee9;
--light1: #e5e9f0;
--light2: #eceff4;
--light3: #ffffff;
--frost0: #8fbcbb;
--frost1: #88c0d0;
--frost2: #81a1c1;
--frost3: #5e81ac;
--checkbox-color: #8091b1;
--bloddish48: hsl(203, 27%, 48%);
--bloddish64: hsl(204, 24%, 64%);
--red53: hsl(355, 35%, 53%);
--red: hsl(352, 56%, 62%);
--orange: #d08770;
--yellow54: hsl(30, 55%, 54%);
--yellow59: hsl(24, 33%, 59%);
--yellow: hsl(27, 49%, 68%);
--yellow75: hsl(19, 38%, 75%);
--green: #a3be8c;
--groddish: hsl(107, 39%, 43%);
--purple: #b48ead;
--font-family-editor: IBM Plex Mono, Menlo, Monaco, Courier New, monospace;
--font-family-preview: Karla, Avenir Next, Helvetica, Arial, sans-serif;
--font-family-preview-heading: Karla, Avenir Next, Helvetica, Arial, sans-serif;
/* --default-font: 'Rubik', 'Glow Sans SC', -apple-system, BlinkMacSystemFont,
'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji',
'Segoe UI Emoji', sans-serif;
--default-font-size: 1.05rem;
*/
--font-default: 'Source Sans Pro', 'Segoe UI Emoji', sans-serif;
--font-title: Jomhuria, serif;
--font-headings: var(--font-title);
--font-monospace: 'Source Code Pro', monospace;
--font-code: 'Fira Mono', monospace;
--text-italic: #fefed4;
--text-bold: #50fa7b;
--text-bold-italic: var(--text-bold);
}
.theme-dark
{
--background-primary: var(--background1);
--background-primary-alt: var(--background2);
--background-secondary: var(--background3);
--background-secondary-alt: var(--background4);
--text-normal: var(--light2);
--text-faint: var(--light0);
--text-muted: var(--light1);
--text-title-h1: var(--red);
--text-title-h2: #d79580;
--text-title-h3: #efc89b;
--text-title-h4: var(--green);
--text-title-h5: var(--bloddish64);
--text-title-h6: var(--purple);
--text-link: var(--frost0);
--text-a: var(--yellow);
--text-a-hover: var(--yellow);
--text-mark: var(--red);
--pre-code: #212121;
--text-highlight-bg: var(--dark3);
--interactive-accent: var(--yellow59);
--interactive-accent-hover: var(--red);
--interactive-hover: var(--dark0);
--interactive-before: var(--dark3);
--background-modifier-border: var(--dark2);
--text-accent: var(--orange);
--interactive-accent-rgb: var(--orange);
--inline-code: #ffeede;
--code-block: #ffeede;
--vim-cursor: var(--orange);
--text-selection: var(--red53); /* Annoying - affects both Edit and Preview, but Preview has translucency */
--opacity-translucency: 0.9;
--list-ul-block-color: #e19742a9;
--list-ul-hover: #e28915de;
}
.theme-light
{
--background-primary: var(--light3);
--background-primary-alt: var(--light3);
--background-secondary: var(--light2);
--background-secondary-alt: var(--light1);
--text-normal: var(--dark1);
--text-faint: var(--dark3);
--text-muted: var(--dark2);
--text-title-h1: var(--red);
--text-title-h2: var(--orange);
--text-title-h3: var(--yellow);
--text-title-h4: var(--green);
--text-title-h5: var(--purple);
--text-link: var(--frost0);
--text-a: var(--frost3);
--text-a-hover: var(--frost1);
--text-mark: rgba(136, 192, 208, 0.3); /* frost1 */
--pre-code: var(--light2);
--text-highlight-bg: var(--light0);
--interactive-accent: var(--frost0);
--interactive-before: var(--light0);
--background-modifier-border: var(--light1);
--text-accent: var(--orange);
--interactive-accent-rgb: var(--orange);
--inline-code: var(--frost1);
--code-block: var(--frost1);
--vim-cursor: var(--orange);
--text-selection: var(--light0);
--opacity-translucency: 1;
}
.theme-dark code[class*="language-"],
.theme-dark pre[class*="language-"],
.theme-light code[class*="language-"],
.theme-light pre[class*="language-"]
{
text-shadow: none !important;
background-color: var(--pre-code) !important;
}
html,
body
{
font-family: var(--font-default);
font-size: 16px !important;
font-weight: 300;
}
.cm-em, em {
color: var(--text-italic);
}
.cm-strong, strong {
font-weight: 700;
color: var(--text-bold);
}
.cm-strong .cm-em,strong em {
color: var(--text-bold-italic);
}
a,
.cm-hmd-internal-link
{
color: var(--text-a) !important;
text-decoration: none !important;
}
a:hover,
.cm-hmd-internal-link:hover,
.cm-url
{
color: var(--text-a-hover) !important;
text-decoration: underline !important;
}
.view-actions a
{
color: var(--text-normal) !important;
}
.view-actions a:hover
{
color: var(--text-a) !important;
}
.HyperMD-codeblock-bg
{
background-color: var(--pre-code) !important;
}
.HyperMD-codeblock
{
line-height: 1.4em !important;
color: var(--code-block) !important;
font-family: var(--font-code);
}
.HyperMD-codeblock-begin
{
border-top-left-radius: 4px !important;
border-top-right-radius: 4px !important;
}
.HyperMD-codeblock-end
{
border-bottom-left-radius: 4px !important;
border-bottom-right-radius: 4px !important;
}
th
{
font-weight: 600 !important;
}
thead
{
border-bottom: 2px solid var(--background-modifier-border) !important;
}
.HyperMD-table-row
{
line-height: normal !important;
padding-left: 4px !important;
padding-right: 4px !important;
/* background-color: var(--pre-code) !important; */
}
.HyperMD-table-row-0
{
/* padding-top: 4px !important; */
}
.CodeMirror-foldgutter-folded,
.is-collapsed .nav-folder-collapse-indicator
{
color: var(--text-a) !important;
}
.nav-file-tag
{
color: var(--text-a) !important;
}
.is-active .nav-file-title
{
color: var(--text-a) !important;
background-color: var(--background-primary-alt) !important;
}
.nav-file-title
{
border-bottom-left-radius: 0 !important;
border-bottom-right-radius: 0 !important;
border-top-left-radius: 0 !important;
border-top-right-radius: 0 !important;
}
.HyperMD-list-line
{
padding-top: 0 !important;
}
.CodeMirror-linenumber
{
font-family: var(--font-code) !important;
}
.CodeMirror-linenumber,
.cm-formatting {
color: var(--frost2) !important;
font-weight: 500;
}
.markdown-preview-section pre code,
.markdown-preview-section code
{
font-size: 0.9em !important;
background-color: var(--pre-code) !important;
}
.markdown-preview-section pre code
{
padding: 4px !important;
line-height: 1.4em !important;
display: block !important;
color: var(--code-block) !important;
}
.markdown-preview-section code
{
color: var(--inline-code) !important;
}
.cm-s-obsidian,
.cm-inline-code
{
-webkit-font-smoothing: auto !important;
}
.cm-inline-code
{
color: var(--inline-code) !important;
background-color: var(--pre-code) !important;
padding: 1px !important;
}
.workspace-leaf-header-title
{
font-weight: 600 !important;
}
.side-dock-title
{
padding-top: 15px !important;
font-size: 20px !important;
}
.side-dock-ribbon-tab:hover,
.side-dock-ribbon-action:hover,
.side-dock-ribbon-action.is-active:hover,
.nav-action-button:hover,
.side-dock-collapse-btn:hover
{
color: var(--text-a);
}
.side-dock
{
border-right: 0 !important;
}
.cm-s-obsidian,
.markdown-preview-view
{
/* padding-left: 10px !important; */
padding-right: 10px !important;
}
/* vertical resize-handle */
.workspace-split.mod-vertical > * > .workspace-leaf-resize-handle,
.workspace-split.mod-left-split > .workspace-leaf-resize-handle,
.workspace-split.mod-right-split > .workspace-leaf-resize-handle
{
width: 1px !important;
background-color: var(--background-secondary-alt);
}
/* horizontal resize-handle */
.workspace-split.mod-horizontal > * > .workspace-leaf-resize-handle
{
height: 1px !important;
background-color: var(--background-secondary-alt);
}
/* Remove vertical split padding */
.workspace-split.mod-root .workspace-split.mod-vertical .workspace-leaf-content,
.workspace-split.mod-vertical > .workspace-split,
.workspace-split.mod-vertical > .workspace-leaf,
.workspace-tabs
{
padding-right: 0px;
}
.markdown-embed-title
{
font-weight: 600 !important;
}
/*.markdown-embed
{
padding-left: 10px !important;
padding-right: 10px !important;
margin-left: 10px !important;
margin-right: 10px !important;
}*/
.cm-header-1.cm-header-1,
.markdown-preview-section.markdown-preview-section h1 {
font-family: var(--font-title);
font-weight: 400;
text-shadow: 1px 1px rgba(0,0,0,0.05),
2px 2px rgba(0,0,0,0.05),
3px 3px rgba(0,0,0,0.05),
4px 4px rgba(0,0,0,0.05),
5px 5px rgba(0,0,0,0.05),
6px 6px rgba(0,0,0,0.05),
7px 7px rgba(0,0,0,0.05),
8px 8px rgba(0,0,0,0.05),
9px 9px rgba(0,0,0,0.05)
}
.theme-light .cm-header-1.cm-header-1,
.theme-light .markdown-preview-section.markdown-preview-section h1 {
text-shadow: 1px 1px rgba(0,0,0,0.02),
2px 2px rgba(0,0,0,0.02),
3px 3px rgba(0,0,0,0.02),
4px 4px rgba(0,0,0,0.02),
5px 5px rgba(0,0,0,0.02),
6px 6px rgba(0,0,0,0.02),
7px 7px rgba(0,0,0,0.02),
8px 8px rgba(0,0,0,0.02),
9px 9px rgba(0,0,0,0.02)
}
.markdown-preview-section.markdown-preview-section h1 {
text-align: center;
}
.markdown-preview-section h2,
.markdown-preview-section.markdown-preview-section h2,
.markdown-preview-section.markdown-preview-section h3,
.markdown-preview-section.markdown-preview-section h4,
.markdown-preview-section.markdown-preview-section h5,
.markdown-preview-section.markdown-preview-section h6
{
font-family: var(--font-family-preview-heading);
font-weight: 600;
}
.cm-header-1.cm-header-1,
.markdown-preview-section.markdown-preview-section h1
{
font-size: 4.75em;
color: var(--text-title-h1) !important;
line-height: 0.75;
}
.cm-header-2,
.markdown-preview-section h2
{
font-size: 26px !important;
color: var(--text-title-h2) !important;
}
.cm-header-3,
.markdown-preview-section h3
{
font-size: 22px !important;
color: var(--text-title-h3) !important;
}
.cm-header-4,
.markdown-preview-section h4
{
font-size: 20px !important;
color: var(--text-title-h4) !important;
}
.cm-header-5,
.markdown-preview-section h5
{
font-size: 18px !important;
color: var(--text-title-h5) !important;
}
.cm-header-6,
.markdown-preview-section h6
{
font-size: 18px !important;
color: var(--text-title-h6) !important;
}
.suggestion-item.is-selected
{
background-color: var(--background-secondary);
}
.empty-state-container:hover
{
background-color: var(--background-secondary-alt);
border: 5px solid var(--interactive-accent) !important;
}
.checkbox-container
{
background-color: var(--interactive-before);
}
.mod-cta
{
/* color: var(--background-secondary-alt) !important; */
font-weight: 600 !important;
}
.mod-cta:hover
{
background-color: var(--interactive-before) !important;
font-weight: 600 !important;
}
.CodeMirror-cursor
{
background-color: var(--vim-cursor) !important;
opacity: 60% !important;
}
input.task-list-item-checkbox {
border: 1px solid var(--checkbox-color);
appearance: none;
-webkit-appearance: none;
}
input.task-list-item-checkbox:checked {
background-color: var(--checkbox-color);
/*box-shadow: inset 0 0 0 2px var(--background-primary);*/
}
.mermaid .note
{
fill: var(--frost3) !important;
}
/****************************************************************************
BEGIN - My code! 😀
****************************************************************************/
.heading-collapse-indicator svg {
background: url('https://cdn.discordapp.com/attachments/560318304472793114/808721915627307058/lets_go_arrow.png');
background-size: contain;
width:12px;
height: 12px;
}
::-webkit-scrollbar {
background-color: transparent;
}
::-webkit-scrollbar-thumb {
background-color: var(--dark3);
}
/* There's no current good way to select an image that is alone, and NOT style images that are inline */
/* span:only-child img {
display: block;
margin: 0 auto;
} */
.view-header {
border-bottom-width: 0;
box-shadow: 0 5px 5px rgba(0,0,0,0.1), 0 10px 5px rgba(0,0,0,0.1);
}
.nav-buttons-container {
justify-content: space-between;
}
a.tag {
white-space: nowrap;
background-color: var(--yellow59);
color: white !important;
padding: 0.2em 0.4em;
border-radius: 1em;
display: inline-block;
transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
border: 1px solid rgba(255,255,255,0.3);
box-shadow: -10px -10px 30px rgba(255,255,255,0.05), 10px 10px 30px rgba(0,0,0,0.2);
}
a.tag:hover {
text-decoration: none !important;
background-color: var(--yellow);
transform: scale(1.1);
}
.dropdown {
background-image: url('https://cdn.discordapp.com/attachments/560318304472793114/808721915627307058/lets_go_arrow.png')
}
/* Triple class selector, to avoid using !important */
.cm-highlight.cm-highlight.cm-highlight,
.markdown-preview-view mark {
background-color: var(--text-mark);
}
.markdown-preview-view blockquote::before{
content: "\201C Citation";
position: relative;
background-color: #9e9e9e13;
padding: 10px 0.25em 20px 10px;
font-weight: 700;
font-size: 1em;
right: 0;
color: var(--text-normal);
margin-bottom: 10px;
display: block;
height: 0.5em;
top: 0em;
left: -0.04em;
}
.markdown-preview-view blockquote::after {
content: "\201C";
position: absolute;
font-size: 3em;
bottom: -0.7em;
right: 0.1em;
}
.markdown-preview-view blockquote {
border-right-width: 0;
border-top-width:0;
border-bottom-width: 0;
position: relative;
margin: 1.5625em 0;
padding: 0 0 10px 0;
overflow: hidden;
color: var(--text-normal);
border-radius: 0.1rem;
box-shadow: 0 0.2rem 0.5rem var(--background-modifier-box-shadow);
page-break-inside: avoid;
background-color: var(--background-secondary);
border-left: 0.2rem solid #999; /*rgb(var(--admonition-color));*/
}
.markdown-preview-view blockquote p {
padding: 0 20px 0 20px;
}
/* Quote in editor */
.HyperMD-quote[role="presentation"] {
border-color: var(--theme-color);
border-left: 7px solid var(--theme-color);
}
/* GRAPH VIEW */
.theme-dark .graph-view.color-fill {
color: white;
}
.theme-dark.graph-view.color-fill-highlight,
.theme-dark.graph-view.color-line-highlight
{
color: var(--interactive-accent-rgb);
}
.graph-view.color-text
{
color: var(--text-a-hover);
}
/*
.graph-view.color-line
{
color: var(--background-modifier-border);
}
*/
.theme-light .graph-view.color-fill
{
color: var(--background-secondary);
}
.graph-view.color-fill-highlight {
color: var(--interactive-accent);
}
.graph-view.color-circle-highlight {
color: var(--text-normal);
}
.theme-dark .graph-view.color-fill-tag {
color: var(--yellow);
}
.theme-dark .graph-view.color-fill-attachment {
color: var(--red);
}
.theme-dark .graph-view.color-fill-unresolved {
color: var(--bloddish64);
}
/* END GRAPH VIEW */
.status-bar {
position: absolute;
bottom: 0;
right: 0;
padding: 0;
border-radius: 5px 0 0 0;
box-shadow: 0 0 3px rgba(0,0,0,0.4);
}
/* List */
ul > li:not(.task-list-item) {
margin-left: -5px;
padding-left: 6px;
border-radius: 5px;
width: fit-content;
margin-bottom: 6px;
margin-top: 4px;
padding-right: 6px;
word-wrap: break-word;
word-break: break-word;
transition: all 300ms ease-in-out;
}
.theme-dark ul > li:not(.task-list-item) {
border-left: 2px solid var(--list-ul-block-color);
}
ul > li:not(.task-list-item):hover {
border-color: var(--list-ul-hover);
}
ol > li:not(.task-list-item) {
margin-left: -5px;
padding-left: 6px;
border-radius: 5px;
width: fit-content;
margin-bottom: 6px;
margin-top: 4px;
padding-right: 6px;
word-wrap: break-word;
word-break: break-word;
transition: all 300ms ease-in-out;
}
.theme-dark ol > li:not(.task-list-item) {
border-left: 2px solid var(--list-ul-block-color);
}
ol > li:not(.task-list-item):hover {
border-color: var(--list-ul-hover);
}
ol > li::marker {
color: var(--list-ol-marker-color);
font-weight: bold;
}
/* Headers */
.markdown-preview-view h1,
.markdown-preview-view h2,
.markdown-preview-view h3,
.markdown-preview-view h4,
.markdown-preview-view h5,
.markdown-preview-view h6 {
position: relative;
}
.markdown-preview-section.markdown-preview-section h1 {
text-align: left;
padding-right: 20px;
display: inline-flex;
}
.markdown-preview-view
/*h2:after, */
h6:after {
border-radius: 9999px;
height: 0.25rem;
position: absolute;
left: 0;
bottom: 0;
width: 50px;
content: '';
background: linear-gradient(130deg, #c600a3, #5433ff 71.07%, #8e60a5 96.05%);
}
.markdown-preview-view h1 {
border: 2px solid var(--h1-outline-color);
border-radius: 20px;
padding-top: 10px;
-webkit-box-shadow: 2px 3px 6px 1px #0d010a, 5px 5px 8px 12px rgba(0,0,0,0);
box-shadow: 2px 3px 6px 1px #0d010a, 5px 5px 8px 12px rgba(0,0,0,0);
}
.markdown-preview-view h2:after {
border-radius: 9999px;
height: 0.25rem;
position: absolute;
left: 0;
bottom: 0;
width: 100%;
content: '';
background: linear-gradient(to right, #d93d1e, #a30095 49%, #d93d1e) border-box;
}
.markdown-preview-view h3,
.markdown-preview-view h4,
.markdown-preview-view h5 {
display: inline-block;
margin: 10px 20px 2px 20px;
border-radius: 0px;
border-bottom: 3px dashed transparent;
background: linear-gradient(var(--background1),var(--background1)) padding-box, linear-gradient(to right, #eaae25, #cb1212 49%, #eaae25) border-box;
padding-bottom: 1px;
}
.markdown-preview-view h4 {
border-bottom: 3px dashed var(--background1);
background: linear-gradient(var(--background1),var(--background1)) padding-box, linear-gradient(to right, #78a847, #15a239 49%, #005e19) border-box;
padding-bottom: 0px;
}
.markdown-preview-view h5 {
border-bottom: 2px dashed var(--background1);
background: linear-gradient(var(--background1),var(--background1)) padding-box, linear-gradient(to right, #4fc3f7, #62a5b5 49%, #6f8283) border-box;
padding-bottom: 0px;
}
.markdown-preview-view h1 .collapse-indicator {
margin-right: 16px;
}
/** Title in a modal dialog **/
.modal .markdown-preview-view h1 {
padding-left: 12px;
padding-bottom: 8px;
padding-top: 2px;
padding-right: 12px;
}
/** When a title is in an embedded page **/
.markdown-embed-content .markdown-preview-view h1 {
padding-left: 12px;
padding-bottom: 0px;
padding-top: 12px;
padding-right: 12px;
}
/* Title in hover dialog */
.hover-popover .markdown-preview-view h1{
padding-left: 12px;
padding-bottom: 0px;
padding-top: 10px;
}
/*********************
* For embeded views *
*********************/
.markdown-preview-view .markdown-embed, .markdown-preview-view .file-embed {
padding: 0;
margin: 0;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
}
.markdown-embed .markdown-preview-view {
padding: 0 10px 0 10px;
}
/** Strip embeded title **/
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h1,
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h2,
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h3,
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h4,
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h5,
.markdown-preview-view .markdown-embed-content .markdown-preview-view > .markdown-preview-section>:nth-child(2) > h6 {
display: none;
}
.markdown-embed-link, .file-embed-link {
right: 0;
}
/* Links */
.external-link::after {
content: ' (🔗)';
}
.external-link {
background-image: none;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment