@keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } :root { --dropdown-backdrop-filter: blur(20px) saturate(6); --dropdown-border-radius: 10px; } #root-widget { background-color: var(--root-background); } body.mobile #root-widget { background-color: var(--main-background-color); } body { --native-titlebar-darwin-x-offset: 10; --native-titlebar-darwin-y-offset: 12 !important; } body.layout-horizontal { --active-tab-background-color: var(--launcher-pane-horiz-background-color); --active-tab-hover-background-color: var(--active-tab-background-color); --new-tab-button-background: transparent; --tab-bar-height: 44px; --native-titlebar-darwin-x-offset: 12; --native-titlebar-darwin-y-offset: 14 !important; } body.mobile { --hover-item-background-color: transparent; } /* #region Mica */ body.background-effects.platform-win32 { /* Quirk: --background-material is read before "theme-supports-background-effects" class * is applied. Apply the matterial even if the theme doesn't support it. */ --background-material: tabbed; } body.background-effects.theme-supports-background-effects.platform-win32 { --launcher-pane-horiz-border-color: var(--launcher-pane-horiz-border-color-bgfx); --launcher-pane-horiz-background-color: var(--launcher-pane-horiz-background-color-bgfx); --launcher-pane-vert-background-color: var(--launcher-pane-vert-background-color-bgfx); --tab-background-color: var(--window-background-color-bgfx); --new-tab-button-background: var(--window-background-color-bgfx); --active-tab-background-color: var(--launcher-pane-horiz-background-color); --root-background: transparent; } body.background-effects.platform-win32.layout-vertical { --background-material: mica; } body.background-effects.theme-supports-background-effects.platform-win32.layout-vertical { --left-pane-background-color: var(--window-background-color-bgfx); --center-pane-background-color-bgfx: var(--center-pane-vert-layout-background-color-bgfx); --right-pane-background-color: var(--right-pane-background-color-bgfx); } body.background-effects.theme-supports-background-effects.platform-win32.layout-horizontal { --center-pane-background-color-bgfx: var(--center-pane-horiz-layout-background-color-bgfx); --gutter-color: var(--left-pane-background-color); } body.background-effects.theme-supports-background-effects.platform-win32, body.background-effects.theme-supports-background-effects.platform-win32 #root-widget { background: var(--window-background-color-bgfx) !important; } body.background-effects.theme-supports-background-effects.platform-win32.layout-horizontal #horizontal-main-container, body.background-effects.theme-supports-background-effects.platform-win32.layout-vertical #vertical-main-container { background-color: var(--root-background); } /* Note split with background effects */ body.background-effects.theme-supports-background-effects.platform-win32 #center-pane .note-split.bgfx { --note-split-background-color: var(--center-pane-background-color-bgfx); } /* #endregion */ /* Matches when the left pane is collapsed */ #horizontal-main-container.left-pane-hidden { --center-pane-border-radius: 0; --tab-first-item-horiz-offset: 5px; } /* Add a border to the vertical launch bar if collapsed. */ body.layout-vertical #horizontal-main-container.left-pane-hidden #launcher-pane.vertical { border-inline-end: 2px solid var(--left-pane-collapsed-border-color); } /* * Zen mode */ @keyframes zen-formatting-toolbar-entrance { from { transform: translateY(200%); } to { transform: translateY(0); } } body.zen .note-split .ribbon-container .classic-toolbar-widget { position: relative; animation: zen-formatting-toolbar-entrance 300ms ease-out; } /* * Gutter */ .gutter { background: var(--gutter-color) !important; transition: background 150ms ease-out; } .gutter:hover { background: var(--gutter-hover-color) !important; transition: background 300ms ease-in; } /* * LAUNCHER PANE / TOOLBAR */ #launcher-container, body.layout-horizontal > .horizontal { align-items: center; } body[dir=ltr] #launcher-container { scrollbar-gutter: stable both-edges; } #launcher-pane.vertical { --launcher-pane-border-color: unset; --launcher-pane-background-color: var(--launcher-pane-vert-background-color); --launcher-pane-text-color: var(--launcher-pane-vert-text-color); --launcher-pane-button-hover-color: var(--launcher-pane-vert-button-hover-color); --launcher-pane-button-hover-background: var(--launcher-pane-vert-button-hover-background); --launcher-pane-button-hover-shadow: var(--launcher-pane-vert-button-hover-shadow); --launcher-pane-button-focus-outline-color: var(--launcher-pane-vert-button-focus-outline-color); --launcher-pane-size: var(--launcher-pane-vert-size); --launcher-pane-icon-size: var(--launcher-pane-vert-icon-size); --launcher-pane-button-margin: var(--launcher-pane-vert-button-margin); --launcher-pane-button-gap: var(--launcher-pane-vert-button-gap); width: var(--launcher-pane-size) !important; min-width: var(--launcher-pane-size) !important; padding-bottom: var(--launcher-pane-button-gap); } #launcher-pane.vertical #launcher-container { width: var(--launcher-pane-size); height: 100%; overflow-x: hidden; overflow-y: auto; } #launcher-pane.horizontal { --launcher-pane-border-color: var(--launcher-pane-horiz-border-color); --launcher-pane-background-color: var(--launcher-pane-horiz-background-color); --launcher-pane-text-color: var(--launcher-pane-horiz-text-color); --launcher-pane-button-hover-color: var(--launcher-pane-horiz-button-hover-color); --launcher-pane-button-hover-background: var(--launcher-pane-horiz-button-hover-background); --launcher-pane-button-hover-shadow: var(--launcher-pane-horiz-button-hover-shadow); --launcher-pane-button-focus-outline-color: var(--launcher-pane-horiz-button-focus-outline-color); --launcher-pane-size: var(--launcher-pane-horiz-size); --launcher-pane-icon-size: var(--launcher-pane-horiz-icon-size); --launcher-pane-button-margin: var(--launcher-pane-horiz-button-margin); --launcher-pane-button-gap: var(--launcher-pane-horiz-button-gap); height: var(--launcher-pane-size) !important; align-items: center; } #launcher-pane.horizontal #launcher-container { width: 100%; height: 100%; overflow-x: auto; overflow-y: hidden; } @media (max-width: 991px) { #mobile-bottom-bar { background: var(--launcher-pane-horiz-background-color); } body.mobile #launcher-pane { background: transparent !important; } } @media (min-width: 992px) { #launcher-pane.horizontal { border-top: unset; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } } #launcher-pane .launcher-button, #launcher-pane .dropdown { width: calc(var(--launcher-pane-size) - (var(--launcher-pane-button-margin) * 2)) !important; height: calc(var(--launcher-pane-size) - (var(--launcher-pane-button-margin) * 2)) !important; margin: var(--launcher-pane-button-gap) var(--launcher-pane-button-margin); } #launcher-pane .launcher-button { padding: 0 !important; border-radius: 8px; transition: background-color 300ms ease-out, color 300ms ease-out, box-shadow 300ms ease-out; cursor: default; } #launcher-pane .dropdown .launcher-button { margin: 0; } #launcher-pane .launcher-button:active, #launcher-pane .launcher-button.show { transform: scale(0.9); transition: transform 50ms linear; } #launcher-pane .launcher-button:hover, #launcher-pane .launcher-button.right-dropdown-button.show, #launcher-pane.horizontal .global-menu-button:hover, #launcher-pane.horizontal .global-menu-button.show { background: var(--launcher-pane-button-hover-background) !important; color: var(--launcher-pane-button-hover-color); box-shadow: var(--launcher-pane-button-hover-shadow); transition: background-color 100ms ease-in, color 80ms ease-in, box-shadow 100ms ease-in; } #launcher-pane div.launcher-button { display: flex; justify-content: center; align-items: center; } #launcher-pane .launcher-button { font-size: var(--launcher-pane-icon-size) !important; } #launcher-pane .launcher-button:focus, #launcher-pane .global-menu :focus { outline: none; } #launcher-pane .launcher-button:focus-visible, #launcher-pane.horizontal .global-menu button:focus-visible { outline: 2px solid var(--launcher-pane-button-focus-outline-color); } #launcher-pane.vertical .global-menu button:focus-visible svg { outline-offset: 4px; outline: 2px solid var(--launcher-pane-button-focus-outline-color); border-radius: 4px; overflow: visible; } #launcher-pane.vertical .spacer { width: var(--launcher-pane-size); } #launcher-pane.horizontal .spacer { height: var(--launcher-pane-size); } /* Protected session enabled button */ #launcher-pane button.bx-check-shield, #launcher-pane button.bx-check-shield:hover { color: var(--protected-session-active-icon-color); transition: color 500ms ease-in-out; } /* Sync status button */ #launcher-pane .sync-status .sync-status-icon { top: 3px; } #launcher-pane .sync-status-icon:not(.sync-status-in-progress):hover { background: unset; } @keyframes sync-status-pulse { from { color: currentColor; } to { color: var(--pulse-color); } } #launcher-pane .sync-status-disconnected-with-changes { --pulse-color: var(--sync-status-error-pulse-color); animation: sync-status-pulse 1s ease-in-out alternate-reverse infinite; } #launcher-pane button.global-menu-button { --update-badge-x-offset: 3%; --update-badge-y-offset: -12%; --hover-item-background-color: transparent; } .tooltip .tooltip-arrow { display: none; } .tooltip .tooltip-inner { padding: 6px 10px !important; box-shadow: -1px -1px 2px var(--tooltip-shadow-color), 2px 2px 8px var(--tooltip-shadow-color) !important; border: unset !important; border-radius: 6px; backdrop-filter: blur(5px); color: var(--tooltip-foreground-color) !important; } /* * Calendar */ .calendar-dropdown-widget { padding: 18px; color: var(--calendar-color); user-select: none; } .calendar-dropdown-widget .calendar-header { gap: 10px; } .calendar-dropdown-widget .calendar-header input, .calendar-dropdown-widget .calendar-header [data-calendar-input="month"] { --input-background-color: transparent; --menu-background-color: transparent; text-align: center; font-size: 1.4em; font-weight: 300; } .calendar-dropdown-widget .calendar-header input:not(:focus) { outline: 3px solid transparent; } .calendar-dropdown-widget .calendar-header .calendar-month-selector .select-button { --select-arrow-svg: initial; /* Disable the dropdown arrow */ } /* Week number column */ .calendar-dropdown-widget .calendar-week-number { transform: rotate(270deg); justify-content: center; padding: 0; opacity: 0.5; font-size: 1em; font-weight: 700; letter-spacing: .5pt; } .calendar-dropdown-widget .calendar-week-number::after { display: none; } @media (max-width: 992px) { .calendar-dropdown-widget .calendar-header button { margin: 0 !important; padding: 0; } .calendar-dropdown-widget .calendar-header .calendar-month-selector .select-button { padding: 0 8px; flex-grow: 1; } } @media (min-width: 992px) { .calendar-dropdown-widget .calendar-header .calendar-month-selector .select-button { min-width: 120px; padding: 0 10px; } } .calendar-dropdown-widget .calendar-header .dropdown-toggle::after { content: unset !important; } .calendar-dropdown-widget .calendar-week span { font-size: 0.85em; font-weight: 500; color: var(--calendar-weekday-labels-color); } .calendar-dropdown-widget .calendar-body { font-size: 0.9em; } .calendar-dropdown-widget .calendar-body a { background: transparent; color: var(--calendar-color); } .calendar-dropdown-widget .calendar-body a.calendar-date-exists { position: relative; text-decoration: none !important; } .calendar-dropdown-widget .calendar-body a.calendar-date-exists:not(:hover)::before { --vertical-margin: 13%; --horiz-margin: 18%; content: ""; position: absolute; top: var(--vertical-margin); inset-inline-end: var(--horiz-margin); bottom: var(--vertical-margin); inset-inline-start: var(--horiz-margin); border-radius: 6px; background: var(--calendar-day-highlight-background); z-index: -1; } body .calendar-dropdown-widget .calendar-body a:hover { border-radius: 6px; background: var(--calendar-day-hover-background); color: var(--calendar-day-hover-color) !important; text-decoration: unset; } /* * Bookmarks folder popup */ div.bookmark-folder-widget { min-width: auto; max-width: 40vw; padding: 0; font-size: 1.1em; } div.bookmark-folder-widget .children-notes { margin: 0; } /* Item */ div.bookmark-folder-widget span.note-link { display: flex; align-items: center; white-space: nowrap; border-radius: 6px; padding: 6px 25px; } /* Item: the parent note */ div.bookmark-folder-widget .parent-note .note-link { padding: 6px 8px; font-weight: bold; } div.bookmark-folder-widget .note-link:hover { background: var(--hover-item-background-color); } div.bookmark-folder-widget .note-link a { padding-inline-start: 8px; color: var(--menu-text-color); cursor: default; } div.bookmark-folder-widget .note-link:hover a { color: var(--hover-item-text-color); } /* The item's icon */ div.bookmark-folder-widget .note-link .bx { color: var(--menu-item-icon-color); font-size: 1.2em; } /* * QUICK SEARCH BOX */ div.quick-search { --padding-top: 8px; --padding-inline-start: 8px; --padding-inline-end: 8px; --padding-bottom: 8px; position: relative; flex-direction: row-reverse; align-items: center; height: unset; contain: unset; padding: var(--padding-top) var(--padding-inline-end) var(--padding-bottom) var(--padding-inline-start); } div.quick-search, div.quick-search:hover, div.quick-search:focus-within { /* Prevent changes to background and outline when the state of the input group changes */ background: transparent; outline: none; } div.quick-search::before { /* The background rectangle of the search box */ position: absolute; content: ""; top: var(--padding-top); inset-inline-start: var(--padding-inline-start); bottom: var(--padding-bottom); inset-inline-end: var(--padding-inline-end); z-index: 0; border: 2px solid transparent; border-radius: 6px; background: var(--quick-search-background); transition: background-color 200ms ease-in; } div.quick-search:hover:before { /* Hovered search box background rectangle */ background: var(--quick-search-hover-background); transition: background-color 75ms ease-out; } div.quick-search:focus-within:before { /* Focused search box background rectangle */ border-color: var(--quick-search-focus-border); background: var(--quick-search-focus-background); transition: background-color 100ms ease-out; } div.quick-search input { padding-inline-start: 15px !important; box-shadow: unset !important; background: transparent !important; } div.quick-search input::placeholder { color: var(--quick-search-color); } div.quick-search:focus-within input { color: var(--quick-search-focus-color) !important; } div.quick-search .search-button { display: flex; align-items: center; justify-content: center; width: 25px; height: 25px; margin-inline-end: 8px; border-radius: 50%; padding: 0; color: var(--quick-search-color) !important; transition: background-color 200ms ease-in !important; } div.quick-search .search-button:active { transform: scale(0.85); } div.quick-search:focus-within:has(input:not(:placeholder-shown)) .search-button { /* Matches when the input has a value and the focus is inside the search box */ background: var(--left-pane-item-action-button-background) !important; color: var(--left-pane-item-action-button-color) !important; transition: background-color 500ms ease-out !important; } html body .quick-search:focus-within .search-button:hover, div.quick-search .search-button.show { /* Hover state */ background: var(--left-pane-item-action-button-hover-background) !important; color: var(--left-pane-item-action-button-color) !important; transition: background-color 100ms ease-out !important; } div.quick-search .dropdown-menu { --quick-search-item-delimiter-color: transparent; --menu-item-icon-vert-offset: -.065em; } /* * TO FIX: The quick search results dropdown has a backdrop issue with the tree panel * when background effects are enabled in Electron. * As a temporary workaround, the backdrop and transparency are disabled for the * vertical layout. */ body.layout-vertical.background-effects div.quick-search .dropdown-menu { --menu-background-color: var(--menu-background-color-no-backdrop) !important; } /* Item */ .quick-search .dropdown-menu *.dropdown-item { padding: 8px 12px !important; } .quick-search .quick-search-item-icon { vertical-align: text-bottom; } /* Note path */ .quick-search .dropdown-menu small { display: block; opacity: 0.5; font-size: 0.75em; overflow: hidden; } /* Note content snippet */ :root .quick-search .search-result-content { background-color: var(--quick-search-result-content-background); border-radius: 4px; } /* Highlighted search terms */ :root .quick-search .search-result-title b, :root .quick-search .search-result-content b, :root .quick-search .search-result-attributes b { color: var(--quick-search-result-highlight-color); font-weight: 600; } .quick-search div.dropdown-divider { margin: 8px 0; } /* * TREE PANE */ #left-pane div.tree { padding: 3px 6px 40px 6px; animation: fade-in 200ms ease-in; } #left-pane span.fancytree-node { border: unset; border-radius: 6px; cursor: default; } #left-pane .ui-fancytree ul { padding-inline-start: 10px; } /* The root element of the tree */ #left-pane .fancytree-container > li:first-child > span { padding-inline-start: 12px; } #left-pane span.fancytree-node.fancytree-active { position: relative; background: transparent !important; color: var(--custom-color, var(--left-pane-item-selected-color)); } @keyframes left-pane-item-select { from { opacity: 0; } to { opacity: 1; } } #left-pane span.fancytree-node.fancytree-active::before { position: absolute; content: ""; top: var(--left-pane-item-selected-shadow-size); inset-inline-start: var(--left-pane-item-selected-shadow-size); bottom: var(--left-pane-item-selected-shadow-size); inset-inline-end: var(--left-pane-item-selected-shadow-size); background: var(--custom-bg-color, var(--left-pane-item-selected-background)) !important; box-shadow: var(--left-pane-item-selected-shadow); border-radius: 6px; animation: left-pane-item-select 200ms ease-out; z-index: -1; } #left-pane span.fancytree-node.protected > span.fancytree-custom-icon { position: relative; filter: unset !important; } #left-pane span.fancytree-node.protected > span.fancytree-custom-icon:after { position: absolute; bottom: 0; inset-inline-end: 0; font-size: 14px; content: "\eb4a"; font-family: "boxicons"; transform: translateX(25%); background: var(--left-pane-background-color); border-radius: 50%; } body[dir=rtl] #left-pane span.fancytree-node.protected > span.fancytree-custom-icon:after { transform: translateX(-25%); } body.mobile .fancytree-expander::before, body.mobile .fancytree-title, body.mobile .fancytree-node > span { font-size: 1rem !important; } @media (max-width: 991px) { body.mobile #mobile-sidebar-container { background-color: rgba(0, 0, 0, 0.5); } body.mobile:not(.force-fixed-tree) #mobile-sidebar-wrapper { border-top-right-radius: 12px; border-bottom-right-radius: 12px; border-inline-end: 1px solid var(--subtle-border-color); } } #left-pane .fancytree-expander { opacity: 0.65; transition: opacity 150ms ease-in; } #left-pane .fancytree-expander:hover { opacity: 1; transition: opacity 300ms ease-out; } #left-pane .fancytree-custom-icon { margin-top: 0; /* Use this to align the icon with the tree view item's caption */ } #left-pane span.fancytree-active .fancytree-title { font-weight: normal; } #left-pane span.fancytree-node:hover { background: var(--left-pane-item-hover-background); } #left-pane span.fancytree-node.shared .fancytree-title::after { opacity: 0.5; } #left-pane .tree-item-button { margin-inline-end: 6px; border: unset; border-radius: 50%; background: var(--left-pane-item-action-button-background); color: var(--left-pane-item-action-button-color); transition: background-color 200ms ease-out, box-shadow 200ms ease-out; } #left-pane .tree-item-button:hover { background: var(--left-pane-item-action-button-hover-background); box-shadow: var(--left-pane-item-action-button-hover-shadow); transition: background-color 100ms ease-in, box-shadow 100ms ease-in; } #left-pane span.fancytree-node.fancytree-active .tree-item-button:hover { box-shadow: var(--left-pane-item-selected-action-button-hover-shadow); } #context-menu-container { /* The context menu of the tree */ --menu-item-icon-vert-offset: -1px; } /* * Tree actions toolbar */ /* Toolbar container (collapsed state) */ #left-pane .tree-actions { max-width: var(--tree-actions-toolbar-collapsed-width); inset-inline-end: var(--tree-actions-toolbar-horizontal-margin); bottom: var(--tree-actions-toolbar-vertical-margin); overflow: hidden; border: 1px solid transparent; padding: var(--tree-actions-toolbar-padding-size); padding-inline-end: var(--tree-actions-toolbar-collapsed-width); background: transparent; transition: max-width 400ms ease-out, background-color 400ms ease-out, border-color 400ms ease-out; } /* Toolbar container (expanded state) */ #left-pane .tree-actions:hover { max-width: 200px; border-color: var(--dropdown-border-color); background: var(--menu-background-color); backdrop-filter: blur(10px) saturate(6); box-shadow: 0 5px 10px rgba(0, 0, 0, var(--dropdown-shadow-opacity)); } /* Toolbar button (toolbar collapsed)*/ #left-pane .tree-actions button { border: unset; color: var(--menu-item-icon-color); opacity: 0; transition: opacity 200ms ease-out; } /* Toolbar button on hover */ #left-pane .tree-actions button:hover { background: var(--hover-item-background-color); } /* Toolbar button (toolbar expanded) */ #left-pane .tree-actions:hover button { opacity: 1; transition: opacity 250ms ease-in; } /* The floating expand button (toolbar collapsed) */ #left-pane .tree-actions::after { display: flex; content: "\eab4"; position: absolute; justify-content: center; align-items: center; top: 50%; inset-inline-end: calc((var(--tree-actions-toolbar-collapsed-width) - var(--tree-actions-toolbar-expand-button-size)) / 2); width: var(--tree-actions-toolbar-expand-button-size); height: var(--tree-actions-toolbar-expand-button-size); box-shadow: 2px 2px 6px var(--left-pane-background-color); border-radius: 50%; background: var(--left-pane-item-action-button-background); backdrop-filter: blur(10px); color: var(--left-pane-item-action-button-color); font-family: boxicons; font-size: 18px; line-height: 1; transform: translateY(-50%); transition: color 200ms ease-in; } /* The floating expand button (toolbar expanded) */ #left-pane .tree-actions:hover::after { background: transparent; color: var(--menu-item-icon-color); opacity: var(--menu-item-disabled-opacity); transition: color 200ms ease-out; } /* * Tree settings popup */ #left-pane .tree-settings-popup { box-shadow: 0px 10px 20px rgba(0, 0, 0, var(--dropdown-shadow-opacity)); border: 1px solid var(--dropdown-border-color); padding: 25px; background: var(--menu-background-color); backdrop-filter: blur(10px) saturate(6); color: var(--menu-text-color); } #left-pane .tree-settings-popup h4 { margin-bottom: 0.75em; font-size: 1.5em; line-height: 1; } /* * TAB BAR */ /* The parent element of the tab bar */ #rest-pane > div.component:first-child { height: var(--tab-bar-height) !important; } .tab-row-widget, .tab-row-container { background: transparent !important; height: var(--tab-bar-height) !important; } .tab-row-container .toggle-button { --icon-button-size: 30px; --icon-button-icon-ratio: .6; margin: 3px 6px auto 8px !important; } .tab-row-container { position: relative; } /* Apply a border to the tab bar that avoids the current tab but also allows a transparent active tab. */ body.layout-horizontal .tab-row-container { border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.electron.background-effects.layout-horizontal .tab-row-container { border-bottom: unset !important; } body.electron.background-effects.layout-horizontal .note-tab-wrapper { top: 1px; } body.electron.background-effects.layout-horizontal .tab-row-container .toggle-button { position: relative; } body.electron.background-effects.layout-horizontal .tab-row-container .toggle-button:after { content: ""; position: absolute; bottom: 0; inset-inline-start: -10px; inset-inline-end: -10px; top: 32px; height: 1px; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.electron.background-effects.layout-horizontal .tab-row-container .tab-scroll-button-left, body.electron.background-effects.layout-horizontal .tab-row-container .tab-scroll-button-right { position: relative; } body.electron.background-effects.layout-horizontal .tab-row-container .tab-scroll-button-inset-inline-start:after, body.electron.background-effects.layout-horizontal .tab-row-container .tab-scroll-button-inset-inline-end:after { content: ""; position: absolute; bottom: 0; inset-inline-start: 0px; inset-inline-end: 0px; height: 1px; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.electron.background-effects.layout-horizontal .tab-row-container .note-tab[active]:before { content: ""; position: absolute; bottom: 0; inset-inline-start: -32768px; top: var(--tab-height); inset-inline-end: calc(100% - 1px); height: 1px; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.electron.background-effects.layout-horizontal .tab-row-container .note-tab[active]:after { content: ""; position: absolute; bottom: 0; inset-inline-start: 100%; top: var(--tab-height); inset-inline-end: 0; width: 100vw; height: 1px; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.electron.background-effects.layout-horizontal .tab-row-container .note-new-tab:before { content: ""; position: absolute; bottom: 0; inset-inline-start: -4px; top: calc(var(--tab-height), -1); inset-inline-end: 0; width: 100vw; height: 1px; border-bottom: 1px solid var(--launcher-pane-horiz-border-color); } body.layout-vertical.electron.platform-darwin .tab-row-container { border-bottom: 1px solid var(--subtle-border-color); } .tab-row-widget-container { height: var(--tab-height) !important; } .tab-row-widget > * { margin-top: calc((var(--tab-bar-height) - var(--tab-height)) / 2); } body.layout-horizontal .tab-row-container { padding-top: calc((var(--tab-bar-height) - var(--tab-height))); } /* Define extra drag areas for Electron windows */ body.layout-horizontal .tab-row-container, body.layout-vertical .tab-row-widget, body.layout-vertical #left-pane .quick-search { -webkit-app-region: drag; } /* Limit the drag area for the previous elements to include just to the element itself and not its descendants also */ body.layout-horizontal .tab-row-container > *, body.layout-vertical .tab-row-widget > *:not(.tab-row-filler), body.layout-vertical #left-pane .quick-search > * { -webkit-app-region: no-drag; } body.layout-horizontal .tab-row-widget, body.layout-horizontal .tab-row-widget-container { margin-top: 0; position: relative; overflow: hidden; } body.desktop:not(.background-effects.platform-win32) #root-widget.horizontal-layout { background-color: var(--root-background) !important; } #root-widget.horizontal-layout .tab-row-widget .note-tab .note-tab-wrapper { border: 1px solid transparent; border-bottom-color: transparent; box-shadow: unset; } #root-widget.horizontal-layout .tab-row-widget .note-tab[active] .note-tab-wrapper { border: 1px solid var(--launcher-pane-horiz-border-color); border-bottom-color: transparent; } .tab-row-widget .note-tab .note-tab-wrapper { height: var(--tab-height) !important; transition: background 75ms ease-in, box-shadow 75ms ease-in; } .tab-row-widget .note-tab .note-tab-wrapper:hover { transition: none; } .tab-row-container .title-bar-buttons { margin-top: calc((var(--tab-bar-height) - var(--tab-height)) * -1); } body.layout-horizontal .tab-row-widget .note-tab .note-tab-wrapper { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .note-tab .note-tab-wrapper { --tab-background-color: initial !important; } .note-tab .note-tab-wrapper::after { content: ""; position: absolute; top: 0; inset-inline-start: 0; inset-inline-end: 0; height: 3px; background-color: var(--workspace-tab-background-color); } body:not([dir=rtl]) .tab-row-widget .note-tab:nth-child(1) { transform: translate3d(var(--tab-first-item-horiz-offset), 0, 0); } :root .tab-row-widget .note-tab .note-tab-icon { padding-inline-end: 5px; /* The gap between the icon and the title */ } .tab-row-widget .note-tab[active] .note-tab-icon { color: var(--active-tab-icon-color); } .tab-row-widget .note-tab .note-tab-title { text-overflow: ellipsis; } body.layout-vertical .tab-row-widget-is-sorting .note-tab.note-tab-is-dragging .note-tab-wrapper { transform: scale(0.85); box-shadow: var(--active-tab-dragging-shadow) !important; } .tab-row-widget .note-tab[active] .note-tab-wrapper { box-shadow: var(--active-tab-shadow); font-weight: unset !important; transition: background 150ms ease-out, box-shadow 300ms ease-out; } .tab-row-widget-is-sorting .note-tab-drag-handle { cursor: grabbing !important; } .tab-row-widget .note-tab-close { display: flex; justify-content: center; align-items: center; transition: background-color 75ms ease-out, color 75ms ease-out; } .tab-row-widget .note-tab-close:hover { background: var(--tab-close-button-hover-background) !important; color: var(--tab-close-button-hover-color) !important; transition-timing-function: ease-in; } .tab-row-widget .note-new-tab { position: relative; margin-inline-start: 3px; color: transparent; /* Prevent the original "+" from being displayed */ } .tab-row-widget .note-new-tab { background: transparent !important; } .tab-row-widget .note-new-tab::before { /* The background circle */ position: absolute; content: ""; top: calc((var(--tab-height) - var(--new-tab-button-size)) / 2); inset-inline-start: calc((var(--tab-height) - var(--new-tab-button-size)) / 2); width: var(--new-tab-button-size); height: var(--new-tab-button-size); background: var(--new-tab-button-background); border-radius: 50%; transition: background-color 200ms ease-out, box-shadow 200ms ease-out, transform 300ms ease-in; will-change: transform; } .tab-row-widget .note-new-tab:hover::before { background: var(--new-tab-button-hover-background); box-shadow: var(--new-tab-button-shadow); transition: background-color 100ms ease-in, box-shadow 100ms ease-in; } .tab-row-widget .note-new-tab::after { /* The "X" icon */ display: flex; position: absolute; content: "\ebc0"; inset-inline-start: 0; top: 0; width: 100%; height: 100%; align-items: center; justify-content: center; font-family: boxicons; font-size: calc(var(--new-tab-button-size) * 0.75); color: var(--new-tab-button-color); transition: color 300ms ease-out, transform 300ms ease-in; will-change: transform; } .tab-row-widget .note-new-tab:hover::after { color: var(--new-tab-button-hover-color); transition: color 100ms ease-in; } .tab-row-widget .note-new-tab:active:before, .tab-row-widget .note-new-tab:active:after { transform: scale(0.85); transition: transform 75ms ease-out; } .tab-row-filler { top: 0; } /* * CENTER PANE */ /* The first visible note split */ .vertical-layout #center-pane .note-split:not(.visible ~ .visible) { border-radius: var(--center-pane-border-radius) 0 0 0; } #center-pane .note-split { padding-top: 2px; background-color: var(--note-split-background-color, var(--main-background-color)); } body:not(.background-effects) #center-pane .note-split { animation: note-entrance 100ms linear; } /* * Ribbon & note header */ .ribbon-container { margin-bottom: 0 !important; } @keyframes note-entrance { from { filter: opacity(0); } to { filter: opacity(1); } } /* * Note title */ .note-title.protected { text-shadow: unset !important; } body.mobile .note-title { background: transparent; } .title-row > *:first-child { margin-inline-end: 0; } .title-row > *:nth-child(2) { margin-inline-start: 0; } .title-row { /* Aligns the "Create new split" button with the note menu button (the three dots button) */ padding-inline-end: 3px; } .note-title-widget input { --input-background-color: transparent; border-radius: 8px; padding-inline-start: 12px; } /* The "Change note icon" button */ :root .note-icon-widget button.note-icon, :root .note-icon-widget button.note-icon:hover { border: none; border-radius: 8px; } /* Dropdown open */ :root .note-icon-widget button.note-icon.show { background: var(--ck-editor-toolbar-dropdown-button-open-background); } :root .note-icon-widget button.note-icon:not(:disabled):hover { background: var(--icon-button-hover-background); color: var(--icon-button-hover-color); } .note-actions { --menu-item-icon-vert-offset: -2.5px; } /* * Note icon popup */ .note-icon-widget .icon-list span { border-radius: 8px; } .note-icon-widget .icon-list span:hover { background: var(--hover-item-background-color); color: var(--hover-item-text-color); } /* * Alert bar */ @keyframes alert-show { from { opacity: 0; } to { opacity: 1; } } #center-pane .note-split > div.alert { position: relative; margin: 8px 0 0 0; border: unset; border-radius: 0; padding: 8px 16px; background: var(--alert-bar-background) !important; font-size: 0.9em; font-weight: normal; animation: alert-show 300ms ease-in; border-bottom: 2px solid #0000001c !important; } /* * Promoted attributes */ .promoted-attribute-cell div.input-group { margin: 1px 0; } /* The promoted attributes section */ div.promoted-attributes-container { display: flex; margin-inline-end: 10%; padding: 6px 0; gap: 8px; align-items: stretch; container-type: inline-size; } div.promoted-attributes-container, div.promoted-attributes-container input { font-size: 0.9rem; } /* A promoted attribute card */ div.promoted-attribute-cell { --pa-card-padding-inline-start: 16px; --pa-card-padding-inline-end: 2px; --input-background-color: transparent; box-shadow: var(--promoted-attribute-card-shadow); display: inline-flex; margin: 0; border-radius: 8px; padding: 2px var(--pa-card-padding-inline-end) 2px var(--pa-card-padding-inline-start); background: var(--promoted-attribute-card-background-color); overflow-y: visible; } @container (max-width: 500px) { /* Narrow promoted attributes section */ div.promoted-attribute-cell { flex-grow: 1; } } /* A promoted attribute card (boolean attribute) */ div.promoted-attribute-cell:has(input[type="checkbox"]):not(:has(.multiplicity > span)) { /* Checbox attribute, without multiplicity */ padding-inline-end: var(--pa-card-padding-inline-start); } div.promoted-attribute-cell > * { display: inline-block; } div.promoted-attribute-cell > label { font-weight: normal; white-space: nowrap; opacity: 0.75; } div.promoted-attribute-cell:not(:has(input[type="checkbox"])) > label::after { content: ":"; } div.promoted-attribute-cell div.input-group { min-height: auto; padding: 1px 6px; } div.promoted-attribute-cell input { padding: 2px 8px; font-weight: 500; } div.promoted-attribute-cell input[type="text"] { width: 10em !important; } div.promoted-attribute-cell input[type="number"] { width: 6em !important; } div.promoted-attribute-cell span.open-external-link-button { display: flex; padding: 0; font-size: 1.2em; } div.promoted-attribute-cell .tn-checkbox { --box-label-gap: 0; height: 1cap; } div.promoted-attribute-cell.promoted-attribute-label-boolean > div:first-of-type { margin-inline-end: 1.5em; } /* The element containing the "new attribute" and "remove this attribute button" */ div.promoted-attribute-cell .multiplicity:has(span) { --icon-button-size: 24px; margin-inline-start: 8px; margin-inline-end: calc(var(--pa-card-padding-inline-start) - var(--pa-card-padding-inline-end)); font-size: 0; /* Prevent whitespaces creating a gap between buttons */ display: flex; } div.promoted-attribute-cell .multiplicity:has(span) span { display: flex; align-items: center; justify-content: center; } div.promoted-attribute-cell.promoted-attribute-label-color { justify-content: space-between; } div.promoted-attribute-cell.promoted-attribute-label-color .input-group { width: auto; } /* * Floating buttons */ /* Floating buttons container */ .floating-buttons-children { opacity: 1; min-height: var(--floating-button-height); transform-origin: right; box-shadow: 1px 1px 1px var(--floating-button-shadow-color); background: var(--floating-button-background-color); backdrop-filter: blur(10px) saturate(6); border-radius: 6px; transition: transform 250ms ease-out, opacity 250ms ease-out; } body[dir=rtl] .floating-buttons-children { transform-origin: left; } /* Floating buttons container (collapsed) */ .floating-buttons-children.temporarily-hidden { display: flex !important; opacity: 0; transform: scaleX(0); pointer-events: none; } /* Floating buttons */ .floating-buttons-children { --border-radius-size: 6px; } .floating-buttons-children > * { margin: 0 !important; } div.floating-buttons-children > button, div.floating-buttons-children .floating-button { width: var(--floating-button-width); height: var(--floating-button-height); padding: 0; border: 0; border-radius: 0; font-size: var(--floating-button-icon-size); align-items: center; color: var(--floating-button-color); } div.floating-buttons-children > button:hover, div.floating-buttons-children .floating-button:hover { background: var(--floating-button-hover-background); color: var(--floating-button-hover-color); } div.floating-buttons-children > button:active, div.floating-buttons-children .floating-button:active { font-size: calc(var(--floating-button-icon-size) * 0.85); } /* The first visible floating button */ div.floating-buttons-children > *:first-child { --border-radius: var(--border-radius-size) 0 0 var(--border-radius-size); border-radius: var(--border-radius); } /* "Show / hide floating buttons" buttons */ @keyframes floating-buttons-show-hide-button-animation { from { transform: rotate(180deg); } to { transform: rotate(0); } } div.floating-buttons-children .close-floating-buttons-button, div.floating-buttons .show-floating-buttons-button { margin-top: calc((var(--floating-button-height) - var(--floating-button-show-hide-button-size)) / 2); width: var(--floating-button-show-hide-button-size); height: var(--floating-button-show-hide-button-size); padding: 0; border: 0; font-size: calc(var(--floating-button-show-hide-button-size) * .8); } div.floating-buttons-children .close-floating-buttons-button:active, div.floating-buttons .show-floating-buttons-button:active { font-size: calc(var(--floating-button-show-hide-button-size) * .65); background: transparent!important; } div.floating-buttons-children .close-floating-buttons-button::before, div.floating-buttons .show-floating-buttons-button::before { display: block; line-height: 1; } /* "Show buttons" button */ div.floating-buttons .show-floating-buttons-button { box-shadow: var(--floating-button-show-button-shadow); background: var(--floating-button-show-button-background); color: var(--floating-button-show-button-color); backdrop-filter: blur(10px); } div.floating-buttons .show-floating-buttons-button::before { animation: floating-buttons-show-hide-button-animation 400ms ease-out; } div.floating-buttons .show-floating-buttons-button:hover, div.floating-buttons .show-floating-buttons-button:active { box-shadow: var(--floating-button-show-button-hover-shadow); background: var(--floating-button-show-button-hover-background) !important; color: var(--floating-button-show-button-color) !important; } /* "Hide buttons" button */ div.floating-buttons-children:not(.temporarily-hidden) .close-floating-buttons-button::before { animation: floating-buttons-show-hide-button-animation 400ms ease-out; } div.floating-buttons-children .close-floating-buttons { border-radius: 0 var(--border-radius-size) var(--border-radius-size) 0; overflow: hidden; } div.floating-buttons-children .close-floating-buttons { margin-inline-start: 0 !important; background: var(--floating-button-hide-button-background); color: var(--floating-button-hide-button-color); } div.floating-buttons-children .close-floating-buttons:has(.close-floating-buttons-button:hover) { background: var(--floating-button-hover-background); color: var(--floating-button-hover-color); } /* Backlink count */ .backlinks-widget .backlinks-ticker { height: 100%; padding: 0 10px; border-radius: var(--border-radius); background: transparent; user-select: none; } .backlinks-widget .backlinks-ticker:hover { background: var(--floating-button-hover-background); } .backlinks-widget .backlinks-items { --menu-padding-size: 20px; } /* TODO: Restyle the path */ .backlinks-widget .backlinks-items .note-path { padding-inline-start: 8px; } /* Code, relation map buttons */ .floating-buttons .code-buttons-widget, .floating-buttons .relation-map-buttons { gap: 0; } /* The highlight animation */ @keyframes floating-button-highlight { from { background: var(--floating-button-background); color: var(--floating-button-color); } to { background: var(--floating-button-hover-background); color: var(--floating-button-hover-color); } } .floating-buttons .bx-tada { /* The class is applied for 1700ms */ animation: floating-button-highlight 425ms ease-in-out alternate infinite; } .floating-buttons .bx-tada::before { font-size: var(--floating-button-icon-size); } /* * Find and replace bar */ .find-replace-widget { container-type: inline-size; border-top: 3px solid var(--root-background) !important; } .find-replace-widget > div { padding: 8px; } .find-replace-widget > div + div { padding-top: 0; } div.find-replace-widget div.find-widget-found-wrapper > span { min-width: 50px; font-style: normal; font-weight: normal; } /* The up / down buttons of the "Find in text" input */ .find-replace-widget .input-group button { font-size: 1.3em; } .find-replace-widget .form-check { padding-inline-start: 0; white-space: nowrap; } .find-replace-widget .form-check .form-check-input { margin-inline-start: 0; } /* Narrow version */ @container (max-width: 600px) { .find-replace-widget > *, .find-replace-widget input, .find-replace-widget button.btn.btn-sm { font-size: .9em; } .find-widget-box { position: relative; justify-content: center; flex-wrap: wrap; gap: 8px; } .find-widget-box, .replace-widget-box { padding-inline-end: 3em !important; } .find-widget-close-button { position: absolute; top: .85em; inset-inline-end: .5em; } .find-widget-box > * { margin: unset !important; } div.find-widget-search-term-input-group { margin-bottom: 8px; max-width: unset; width: 100%; } .find-widget-found-wrapper, .find-widget-found-wrapper > span { min-width: 0 !important; } .find-widget-spacer { display: none; } .form-check { min-height: unset; margin-bottom: unset; } .replace-widget-box { gap: 8px; } .replace-widget-box > * { margin-inline-end: unset !important; } div.replace-widget-box button.btn.btn-sm { min-width: unset; white-space: nowrap; } } /* * RIGHT PANE: TABLE OF CONTENTS AND HIGHLIGHT LIST */ #right-pane { background: var(--right-pane-background-color); } #right-pane div.card-header { align-items: center; border: 0; } #right-pane .card-header-title { margin-top: 2px; font-weight: 600; font-size: .85em; letter-spacing: .3pt; color: var(--right-pane-heading-color); } #right-pane .card-header-buttons { align-items: center; top: 0; } #right-pane .toc-widget, #right-pane .highlights-list-widget { padding: 0 0 0 10px; } #right-pane .toc li, #right-pane .highlights-list li { padding-top: 2px; padding-inline-end: 8px; padding-bottom: 2px; border-radius: 4px; text-align: unset; transition: background-color 150ms ease-in, color 150ms ease-in; } #right-pane .highlights-list li { line-height: 1.2; padding: 8px; } #right-pane .toc li::marker, #right-pane .highlights-list li::marker { color: var(--muted-text-color); } #right-pane .toc li:hover, #right-pane .highlights-list li:hover { background: var(--right-pane-item-hover-background); color: var(--right-pane-item-hover-color); font-weight: normal; transition: background-color 300ms ease-out color 300ms ease-out; } #right-pane .toc li:active, #right-pane .highlights-list li:active { background: transparent; transition: none; } /** Canvas **/ .excalidraw { --border-radius-lg: 6px; } .excalidraw .Island.App-toolbar { --island-bg-color: var(--floating-button-background-color); --shadow-island: 1px 1px 1px var(--floating-button-shadow-color); } .excalidraw .dropdown-menu { border: unset !important; box-shadow: unset !important; background-color: transparent !important; --island-bg-color: var(--menu-background-color); --shadow-island: 0px 10px 20px rgba(0, 0, 0, var(--dropdown-shadow-opacity)); --default-border-color: var(--bs-dropdown-divider-bg); --button-hover-bg: var(--hover-item-background-color); } .excalidraw .dropdown-menu .dropdown-menu-container { border-radius: var(--dropdown-border-radius); } .excalidraw .dropdown-menu .dropdown-menu-container > div:not([class]):not(:last-child) { margin-inline-start: calc(var(--padding) * var(--space-factor) * -1) !important; margin-inline-end: calc(var(--padding) * var(--space-factor) * -1) !important; } .excalidraw .dropdown-menu:before { content: unset !important; }