diff --git a/Template.php b/Template.php index 03f4bb7..1cd2739 100644 --- a/Template.php +++ b/Template.php @@ -264,35 +264,16 @@ class Template { $title = tpl_getLang('adjunct_start_logo_text') . $conf['title']; } - $desktop = self::getResizedImgTag( - 'img', - array( - 'class' => 'mobile-hide', - 'src' => array('wiki:logo-wide.svg', 'wiki:logo.svg', 'wiki:logo-wide.png', 'wiki:logo.png'), - 'alt' => $title, - ), - 0, 250, false - ); - $mobile = self::getResizedImgTag( - 'img', - array( - 'class' => 'mobile-only', - 'src' => array( - 'wiki:logo-32x32.svg', 'wiki:favicon.svg', 'wiki:logo-square.svg', 'wiki:logo.svg', - 'wiki:logo-32x32.png', 'wiki:favicon.png', 'wiki:logo-square.png', 'wiki:logo.png' - ), - 'alt' => $title, - ), - 32, 32 - ); + $logo = << +EH22 DEMO +HTML; // homepage logo should not link to itself (BITV accessibility requirement) if($linkit) { - tpl_link(wl(), $desktop, 'accesskey="h" title="[H]"'); - tpl_link(wl(), $mobile, 'accesskey="h" title="[H]"'); + tpl_link(wl(), $logo, 'accesskey="h" title="[H]"'); } else { - echo $desktop; - echo $mobile; + echo $logo; } } diff --git a/css/area_content.less b/css/area_content.less index 0390921..67f2840 100755 --- a/css/area_content.less +++ b/css/area_content.less @@ -2,25 +2,20 @@ * This file provides the design styles for the page content. */ +.picker { + z-index: 2; // position over .content +} + .content .row { > .col-xs-12 { - box-shadow: @box-shadow; + z-index: 1; + + background-color: var(--color-background); + #dokuwiki__content { position: relative; - &::before { - content: ''; - position: absolute; - top: 0; - left: 0; - height: @page-header_height; - box-sizing: border-box; - width: 100%; - background-color: @ini_background_page_header; - border-bottom: 1px solid @ini_border_light; - } - .page-content { padding-top: @page-header_height; @@ -31,6 +26,12 @@ } } } + @media @screen_min-md { + > .col-xs-12 { + border-left: dashed 0.25em var(--color-shade-4); + border-radius: 0; + } + } } .main-content > .level2, diff --git a/css/area_footer.less b/css/area_footer.less index bc11b5a..7e103bd 100755 --- a/css/area_footer.less +++ b/css/area_footer.less @@ -7,10 +7,10 @@ @media screen { .page-footer { min-height: @page-header_height; - background-color: @ini_background_page_header; - border-top: 1px solid @ini_border_light; + background-color: var(--color-background); + border-top: 1px solid var(--color-shade-4); border-radius: 0 0 @fix_border-radius @fix_border-radius; // @ini_default_border_radius vs. @fix_border-radius - color: @ini_background_page_footer; + color: var(--color-shade-4); font-size: @font-size-default; text-align: right; padding: @margin-small @margin-default; @@ -35,20 +35,16 @@ .main-footer { position: relative; box-sizing: border-box; - background-color: @ini_background_site; + background-color: var(--color-background); margin-top: 5px; // for box-shadow of content text-align: center; } p { - color: @ini_text_webframe; + color: var(--color-shade-4); font-size: @font-size-default; margin: 0; } - - a { - color: @ini_nav_menu_color; - } } } diff --git a/css/area_forms.less b/css/area_forms.less index 9efaee0..d7be3cf 100644 --- a/css/area_forms.less +++ b/css/area_forms.less @@ -59,8 +59,8 @@ meter, progress { font: inherit; font-weight: normal; - color: #333; - background-color: #fff; + color: var(--color-foreground); + background-color: var(--color-background); line-height: normal; margin: 0; vertical-align: middle; @@ -90,8 +90,7 @@ textarea, select, keygen { min-height: @formfield_min-height; - border: 1px solid @ini_border; - box-shadow: inset 0 0 1px #eee; + border: 1px solid var(--color-shade-4); border-radius: @fix_border-radius; padding-left: .3rem; padding-right: .3rem; @@ -118,7 +117,7 @@ select:active, select:focus, keygen:active, keygen:focus { - border-color: #999; + border-color: var(--color-shade-4); } input[type="file"] { @@ -158,19 +157,21 @@ button[type=submit], cursor: pointer; box-shadow: none; background-image: none; - background-color: @ini_button_background; - border: 1px solid @ini_button_background; - border-radius: @fix_border-radius; - color: @ini_button_color; + background-color: var(--color-shade-1); + border: solid 0.1rem var(--color-shade-2); + border-radius: 0.5rem; + color: var(--color-foreground); vertical-align: top; padding: .3em @grid; - transition: @transition background-color, @transition color; &:hover, &:active, &:focus { - background-color: @ini_button_color; - color: @ini_button_background; + background-color: transparent; + color: var(--color-glow-primary); + border-color: var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); } } @@ -239,13 +240,11 @@ button[readonly], select[readonly], textarea[readonly] { cursor: auto; - background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgo8bGluZWFyR3JhZGllbnQgaWQ9Imc4MjQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjAlIiB5Mj0iMTAwJSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCIvPjxzdG9wIHN0b3AtY29sb3I9IiNGNEY0RjQiIG9mZnNldD0iMC4zIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0VFRUVFRSIgb2Zmc2V0PSIwLjk5Ii8+PHN0b3Agc3RvcC1jb2xvcj0iI0NDQ0NDQyIgb2Zmc2V0PSIuOTkiLz4KPC9saW5lYXJHcmFkaWVudD4KPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNnODI0KSIgLz4KPC9zdmc+); - background-image: linear-gradient(to bottom, #ffffff 0%, #f4f4f4 30%, #eeeeee 99%, #cccccc 99%); - background-color: #eee; + background-color: var(--color-background); opacity: .5; border: 1px solid @ini_border; border-radius: @fix_border-radius; - color: #333; + color: var(--color-shade-4); font-weight: normal; padding: .3em @grid; transition: @transition background-color, @transition color; diff --git a/css/area_header.less b/css/area_header.less index 50588a8..b041641 100755 --- a/css/area_header.less +++ b/css/area_header.less @@ -13,20 +13,19 @@ @media @screen_min-md { .logo { padding: 1rem 0 .3rem; + text-align: center; img { - height: 4.6rem; + height: 200px; width: auto; - border-style: solid; - border-color: transparent; - border-width: 2px 0; + transition: transform 200ms ease-in-out; } a:hover, a:focus, a:active { img { - border-width: 0; + transform: scale(1.05); } } } @@ -34,7 +33,13 @@ @media @screen_max-md { .logo { - display: table-cell; + //display: table-cell; + text-align: center; + width: 100%; + + img { + max-height: 200px; + } .mobile-only { margin: .8rem 1rem .6rem 0; @@ -85,7 +90,7 @@ /* + + + wiki title + + + */ p.title { - background-color: @ini_background_site; + background-color: var(--color-background); opacity: @header-font-opacity; color: @ini_text_webframe; line-height: @line-height-default; diff --git a/css/area_main-content-anchor.less b/css/area_main-content-anchor.less index 0644f4a..c5e55dc 100644 --- a/css/area_main-content-anchor.less +++ b/css/area_main-content-anchor.less @@ -9,13 +9,27 @@ svg { width: 1em; height: 1em; - fill: @ini_link; + fill: var(--color-foreground); } } &:hover { a.anchor { display: inline-block; + transition-property: filter, border-color; + transition-duration: 200ms; + transition-timing-function: ease-out; + + &:hover { + color: var(--color-glow-primary); + filter: var(--filter-glow-primary); + transition: var(--transition-glow); + + svg { + fill: var(--color-glow-primary); + } + } + } } } diff --git a/css/area_main-content-secedit.less b/css/area_main-content-secedit.less index f341f80..1d26e34 100644 --- a/css/area_main-content-secedit.less +++ b/css/area_main-content-secedit.less @@ -12,19 +12,21 @@ form div.no { button { margin-top: -.4rem; - padding-right: 0; + margin-right: -0.4rem; + padding: 0.2rem 0.4rem; } } // "section editing button" button { + display: flex; + align-items: center; background-color: transparent; color: transparent; border-color: transparent; &::after { content: ''; - float: right; display: inline-block; background: transparent url("svg.php?svg=pencil.svg&f=existing") center center no-repeat; height: 1em; @@ -34,20 +36,20 @@ border-radius: @ini_default_border_radius; margin-left: @small-spacing; margin-top: -1px; + + color: var(--color-foreground); + mask-size: contain; + mask-position: center; + mask-repeat: no-repeat; + background: currentColor !important; + + mask-image: url('img/pencil.svg'); } &:hover, &:active, &:focus { - //background-color: @ini_existing; - color: @ini_existing; - //border-color: @ini_existing; - - &::after { - background-color: @ini_existing; - background-image: url("svg.php?svg=pencil.svg&f=background"); - border-color: @ini_existing; - } + .fnActiveButton(); } } } diff --git a/css/area_main-content.less b/css/area_main-content.less index ccd1ccc..6058c8c 100755 --- a/css/area_main-content.less +++ b/css/area_main-content.less @@ -6,7 +6,7 @@ div[class^="level"] { p a.media { img { - border: 1px dotted @ini_background_site; + border: 1px dotted var(--color-background); } &:hover, diff --git a/css/area_main-sidebar-nav.less b/css/area_main-sidebar-nav.less index 2006df4..8363b35 100755 --- a/css/area_main-sidebar-nav.less +++ b/css/area_main-sidebar-nav.less @@ -19,12 +19,16 @@ } nav { + display: flex; + flex-direction: column; + gap: 0.75rem; + &.nav-main { margin-bottom: @nav-margin; } > p { - color: @ini_nav_menu_color; + color: var(--color-foreground); &.noissue { color: @ini_text_webframe; @@ -41,7 +45,7 @@ } li { - color: @ini_nav_menu_color; + color: var(--color-foreground); > div { color: @ini_text_webframe; @@ -59,45 +63,63 @@ /* + + + + + active + + + + + */ + span.curid { font-weight: bold; } } } - a { + a, label { &:link, &:visited { opacity: .9; - color: @ini_nav_menu_color; + color: var(--color-foreground); } * { - color: inherit; + color: var(--color-foreground); } } /* + + + the wrapper around the toggle to reserve space + + + */ + div.nav { min-height: @icon-size + @margin-small; - border: 1px solid transparent; + background-color: var(--color-background); + border-radius: 0.5rem; + + &.themeToggle input { + width: 0; + height: 0; + margin: 0; + padding: 0; + display: block; + opacity: 0; + } // the toggle element - a { + a, label { + border-radius: 0.5rem; + background-color: var(--color-shade-1); + transition: background-color 150ms; + color: var(--color-foreground); + font-size: 1.2em; + border: solid 0.1em var(--color-shade-1); + transition-property: filter, border-color; + transition-duration: 200ms; + transition-timing-function: ease-out; + + cursor: pointer; - display: table; + display: flex; + align-items: center; width: 100%; - min-height: @icon-size + @margin-small; opacity: 1; - border: 1px solid transparent; - border-radius: @fix_border-radius; - color: @ini_nav_menu_color; - font-size: @font-size-head6; font-weight: normal; - margin: -1px 0 @very-small-spacing; - padding-bottom: .4rem; - padding-top: .4rem; - transition: @transition color, @transition background-color, @transition border-color; + margin: 0 0 @very-small-spacing; + padding: 0.4rem 0.1rem; + text-decoration: none; span { display: inline-block; @@ -105,19 +127,61 @@ color: inherit; } - &:hover, - &:focus, - &:active { - position: relative; // always show label, even with collapsed sidebar - width: 100%; - background-color: @ini_nav_menu_hover_bg; - border-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_color; - text-decoration: none; + span.ico { + display: flex; + align-items: center; + justify-content: center; + i[data-icon] { + font-size: 1.5rem; + } + } + + + /* + + + submenu entry is active + + + */ + /* + + + toggle: open + + + */ + + &.is-active, &.is-open { + background-color: var(--color-shade-2); + border-color: var(--color-shade-4); + color: var(--color-foreground); span.ico { &:after { - background-color: @ini_nav_menu_hover_color; + background-color: currentColor; + } + + strong { + border-color: currentColor; + } + + svg { + path { + fill: currentColor; + } + } + } + } + } + + &:hover, + &:focus-within { + position: relative; // always show label, even with collapsed sidebar + z-index: 100; + + a, label { + + width: 100%; + background-color: transparent; + border: solid 0.1em var(--color-glow-primary); + text-decoration: none; + color: var(--color-glow-primary); + filter: var(--filter-glow-primary); + transition: var(--transition-glow); + + + span.ico { + &:after { + background-color: currentColor; } strong { @@ -126,63 +190,12 @@ svg { path { - fill: @ini_nav_menu_hover_color; + fill: currentColor; } } } } - /* + + + submenu entry is active + + + */ - &.is-active { - font-weight: bold; - } - - /* + + + toggle: open + + + */ - &.is-open { - background-color: @ini_nav_menu_hover_color; - border-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_bg; - - span.ico { - &:after { - background-color: @ini_nav_menu_hover_bg; - } - - strong { - border-color: @ini_nav_menu_hover_bg; - } - - svg { - path { - fill: @ini_nav_menu_hover_bg; - } - } - } - - &:hover, - &:focus, - &:active { - background-color: @ini_nav_menu_hover_bg; - border-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_color; - - span.ico { - &:after { - background-color: @ini_nav_menu_hover_color; - } - - strong { - border-color: inherit; - } - - svg { - path { - fill: @ini_nav_menu_hover_color; - } - } - } - } - } } span.ico { @@ -205,7 +218,7 @@ bottom: auto; height: @border-height; width: 1px; - background-color: @ini_nav_menu_color; + background-color: currentColor; margin-top: -(@border-height / 2); // wordbreak too late in IE 10 @@ -222,7 +235,7 @@ display: inline-block; width: @icon-size * 0.98; height: @icon-size * 0.98; - border: 2px solid fade(@ini_nav_menu_color, 80%); + border: 2px solid currentColor; border-top-right-radius: 50%; border-bottom-left-radius: 50%; color: inherit; @@ -240,7 +253,7 @@ height: @icon-size; path { - fill: @ini_nav_menu_color; + fill: currentColor; transition: @transition all; } } @@ -254,6 +267,7 @@ } /* + + + + + the panel (hidden by default) + + + + + */ + div.nav-panel { display: none; margin-top: .5rem; @@ -302,7 +316,7 @@ #dokuwiki__aside { div.nav { a { - margin-left: 1px; + margin-left: 0; } } } @@ -328,7 +342,7 @@ min-width: 45%; max-width: 90%; height: auto; - background: @ini_background_site; + background: var(--color-background); > nav { position: relative; @@ -337,7 +351,8 @@ margin-top: 1.2rem; } - a { + a, + label { font-size: @font-size-small; } } diff --git a/css/area_main-sidebar-search.less b/css/area_main-sidebar-search.less index f2a4c03..a14fbc6 100644 --- a/css/area_main-sidebar-search.less +++ b/css/area_main-sidebar-search.less @@ -13,9 +13,7 @@ p.toggleSearch a, button[type="submit"] { - .fontello(); .hide-text-show-before(); - .icon-search(); position: relative; width: @icon-size; @@ -26,60 +24,65 @@ border: solid 1px transparent; padding: 0; transition: @transition color, @transition background-color, @transition border-color; + display: flex; + align-items: center; &:hover, &:focus, &:active { - min-height: @icon-size; - background-color: @ini_button_color; - border: solid 1px @ini_button_background; + .fnActiveButton(); - &::after { - background-color: @ini_button_background; + &::after{ + background-color: var(--color-glow-primary); } } &::before { - width: 100%; - color: inherit; + width: @icon-size; + height: 0.8em; font-size: @icon-search_font-size; text-align: center; margin: 0; + color: var(--color-foreground); + content: ''; + display: block; + mask-size: contain; + mask-position: center; + mask-repeat: no-repeat; + background-color: currentColor; + + + mask-image: url('img/search.svg'); } } p.toggleSearch { display: none; - margin: -2px 0 0; // reverse transparent border and box-sizing of a child padding: 0; - @media @screen_max-xxlg { - margin-top: -1px; - } - a { min-width: (@toggle-showsidebar_width + 0.1); /* must be a bit a wider than @toggle-showsidebar_width to hide right border */ width: @main-ico-dummy; - border-radius: @fix_border-radius; - color: @ini_nav_menu_color; + border-radius: 0.5rem 0 0 0.5rem; + border-right: none; + background-color: var(--color-shade-1); + color: var(--color-foreground); text-decoration: none; box-sizing: border-box; &::before { - position: absolute; - top: 50%; - left: 0; + width: 100%; color: inherit; text-align: center; - margin-top: -(@icon-search_font-size / 2); } &:hover, &:focus, &:active { - background-color: @ini_nav_menu_hover_bg; - border-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_color; + border-right: none; + background-color: transparent; + border-color: var(--color-glow-primary); + color: var(--color-glow-primary); } } } @@ -92,17 +95,6 @@ height: auto; min-height: (@icon-size - .2); color: @quicksearch-button-color; - - &:hover, - &:focus, - &:active { - top: 0; - bottom: 0; - min-height: @icon-size; - background-color: @ini_button_color; - border: solid 1px @ini_button_background; - color: @ini_button_background; - } } /* + + + form + + + */ @@ -128,7 +120,6 @@ button[type="submit"] { border: solid 1px transparent; - border-right-color: @ini_border; margin-left: -(@icon-size); &::after { @@ -138,23 +129,27 @@ bottom: 15%; width: 1px; left: -1px; - background-color: @ini_border; + background-color: var(--color-shade-4); transition: @transition background-color; } } div.ajax_qsearch { box-shadow: none; - background-color: #FFF; + background-color: var(--color-shade-1); padding: 0; + z-index: 300; // otherwise hidden behind sidebar in mobile view + border: solid 0.1em var(--color-shade-4); + border-radius: 0.5rem; - strong { - color: @quicksearch-button-color; - padding: 0.25rem 0.5rem + > strong { + color: var(--color-foreground); + padding: 0.25rem 0.5rem; + border-bottom: solid 0.1em var(--color-shade-4); } ul li { - color: @quicksearch-button-color; + color: var(--color-foreground); a { display: block; @@ -162,12 +157,12 @@ overflow: hidden; color: inherit; text-overflow: ellipsis; - } - } - ul li { - &:nth-child(odd) { - background-color: @suggestion-zebra; + &:hover, + &:focus, + &:active { + background-color: var(--color-shade-2); + } } } } @@ -223,6 +218,11 @@ // show when toggled body.show-mobile-sidebar { + #dokuwiki__aside { + padding: 0 1rem; + border-radius: 0.5rem; + } + p.toggleSearch { display: none !important; } diff --git a/css/area_main-sidebar-tabs.less b/css/area_main-sidebar-tabs.less index 399e601..f2fdefd 100644 --- a/css/area_main-sidebar-tabs.less +++ b/css/area_main-sidebar-tabs.less @@ -21,7 +21,7 @@ border-top-left-radius: @fix_border-radius; &.active { - border-bottom: 1px solid @ini_background_site; + border-bottom: 1px solid var(--color-background); font-weight: bold; } } diff --git a/css/area_msg.less b/css/area_msg.less index 41fe08b..8697293 100644 --- a/css/area_msg.less +++ b/css/area_msg.less @@ -15,23 +15,65 @@ } } -/* short fix: SPR-891 - icons for notifications in message area are repeated */ div.success, div.error, div.info, div.notify { - background-repeat: no-repeat; - background-position: 8px 50%; - border: 1px solid #eeb; - font-size: 90%; - margin: 0 0 .5em; - padding: .4em; - padding-left: 32px; - overflow: hidden; - border-radius: @fix_border-radius; + display: block; + border: none; + border-left: solid 0.5rem var(--color-shade-4); + border-radius: 0.5rem; + padding: 1em; + background-image: none; + background-color: var(--color-shade-1); - * { - color: inherit; + &::before { + display: inline-block; + content: ""; + margin: 0.3em 0.2em 0 0; + width: 1em; + height: 1em; + mask-size: contain; + mask-position: center top; + mask-repeat: no-repeat; + background-color: currentColor; + vertical-align: top; + } + + &.success { + color: var(--color-success); + + &::before { + mask-image: url(img/tick_small.svg); + } + } + + &.error { + border-left-color: var(--color-error); + color: var(--color-foreground); + + &::before { + background-color: var(--color-error); + mask-image: url(img/power.svg); + } + } + + &.info { + color: var(--color-foreground); + + &::before { + mask-image: url(img/info.svg); + } + } + + &.notify { + border-left-color: var(--color-warning); + color: var(--color-foreground); + + &::before { + background-color: var(--color-warning); + mask-image: url(img/warning.svg); + } } a { diff --git a/css/area_nav-breadcrumb.less b/css/area_nav-breadcrumb.less index 7c7ac0c..4200172 100755 --- a/css/area_nav-breadcrumb.less +++ b/css/area_nav-breadcrumb.less @@ -6,29 +6,21 @@ position: relative; min-height: @page-header_height; box-sizing: border-box; - background-color: @ini_background; - border-bottom: 1px solid @ini_border_light; + background-color: var(--color-background); + border-bottom: 1px solid var(--color-shade-4); padding: 1rem 1.8rem .2rem; - @media @screen_max-md { - background-color: @ini_background_page_header; - } - @media @screen_max-xs { padding-left: @margin-small; padding-right: .75rem; } - @media @screen_xs-lg { - background-color: @ini_background; - } - > p { font-size: @font-size-small; margin: 0; @media @screen_max-xs{ - width: 1px; + width: 0; position: relative; overflow: hidden; height: 1.6rem; @@ -58,14 +50,16 @@ min-width: 1.9em; width: auto; box-sizing: border-box; - border: solid 1px transparent; - border-radius: @ini_default_border_radius; // @ini_default_border_radius vs. @fix_border-radius + background-color: var(--color-shade-1); + border: solid .1em transparent; + border-radius: 0.5rem; vertical-align: middle; text-decoration: none; margin-top: -.2em; - transition: @transition border-color; + transition: var(--transition-glow); &:before { + color: var(--color-foreground); font-size: @font-size-default + (@font-scale-factor * 2); margin-top: .17rem; } @@ -73,7 +67,14 @@ &:hover, &:focus, &:active { - border-color: @ini_existing; + &:before { + color: var(--color-glow-primary); + } + + background-color: transparent; + border-color: var(--color-glow-primary); + color: var(--color-glow-primary); + filter: var(--filter-glow-primary); } } } diff --git a/css/area_nav-metabox.less b/css/area_nav-metabox.less index fbc1c48..1e16a28 100755 --- a/css/area_nav-metabox.less +++ b/css/area_nav-metabox.less @@ -7,16 +7,22 @@ .flex-direction(); .justify-content(flex-end); + clear: none; + display: block; position: relative; float: right; + + box-sizing: border-box; max-width: 40%; - margin-top: -(@page_padding-top); // reverse padding-top of .page container - margin-right: -1px; + padding-bottom: 0.5rem; + height: 4rem !important; + + color: var(--color-foreground); // >= 1024 @media @screen_min-md { height: @page-header_height; - border: 1px solid transparent; + border: 0 none; } // < 1024 @@ -36,8 +42,8 @@ top: 0; ul.meta-tabs > li > a { - border-top-color: @ini_background_site; - border-bottom-color: @noopentasks-border; + border-top-color: var(--color-background); + border-bottom-color: var(--color-shade-4); border-radius: 0 0 @ini_default_border_radius @ini_default_border_radius; } @@ -115,26 +121,17 @@ position: relative; display: block; font-size: @font-size-small; - transition: @transition background-color, @transition border-color, @transition color; - - @media @screen_min-md { - background-color: @ini_background_site; - border: 1px solid @noopentasks-border; - border-bottom-color: @ini_background_site; - border-radius: @ini_default_border_radius @ini_default_border_radius 0 0; // @ini_default_border_radius vs. @fix_border-radius - color: @ini_nav_menu_color; - margin-left: 4px; - padding: .3em 1rem .1em; - } + transition: var(--transition-glow); + background-color: var(--color-shade-1); + border: solid 0.1em transparent; + border-radius: 0.5rem; + color: var(--color-foreground); + padding: .25em; + margin-left: 0; @media @screen_max-md { - background-color: @ini_background; top: 0; - border: 1px solid @ini_existing; - color: @ini_existing; margin-top: .2rem; - margin-left: 0; - padding: .2em .3rem; } * { @@ -153,35 +150,16 @@ &:focus, &:active { text-decoration: none; - - @media @screen_min-md { - background-color: @ini_background; - border-color: @ini_existing; - color: @ini_existing; - } - - @media @screen_max-md { - background-color: @ini_existing; - border-color: @ini_background; - color: @ini_background; - } + background-color: transparent; + border-color: var(--color-glow-secondary); + color: var(--color-glow-secondary); + filter: var(--filter-glow-secondary); } } &.active { > a { cursor: default; - background-color: @ini_background; - border-color: @ini_existing; - border-bottom-color: @ini_background; - color: @ini_existing; - - @media @screen_max-md { - background-color: @ini_existing; - border-bottom-color: @ini_existing; - border-radius: 0; - color: @ini_background; - } } } } @@ -202,15 +180,16 @@ right: 0; display: none; width: 100%; - background-color: @ini_background; - border: 1px solid @ini_existing; + background-color: var(--color-shade-1); + border: solid .1em transparent; + border-radius: 0.5rem; @media @screen_min-xs { min-width: 20em; } @media @screen_min-md { - border-radius: 0 0 @fix_border-radius @fix_border-radius; // @ini_default_border_radius vs. @fix_border-radius + margin-top: 0.5rem; } &.active { @@ -218,7 +197,7 @@ } a { - color: @ini_existing; + color: var(--color-foreground); } > div { @@ -260,8 +239,10 @@ float: none; margin: 0; padding: .6rem .5rem .5rem .8rem; - background: transparent; - border: 0 none; + background-color: transparent; + color: var(--color-foreground); + border: solid .1em var(--color-shade-4); + border-radius: 0.5rem; h3 { display: none; @@ -295,7 +276,7 @@ width: 4px; height: 4px; overflow: hidden; - background-color: @ini_existing; + background-color: var(--color-shade-4); } } } diff --git a/css/area_nav-pagetools.less b/css/area_nav-pagetools.less index 58df991..7172ae1 100755 --- a/css/area_nav-pagetools.less +++ b/css/area_nav-pagetools.less @@ -100,10 +100,11 @@ nav#dokuwiki__pagetools { } &:focus { - box-shadow: @box-shadow; + box-shadow: none; background-image: none; - background-color: @ini_background; - color: @ini_existing; + color: var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); span { position: relative; @@ -113,7 +114,7 @@ nav#dokuwiki__pagetools { } svg { - fill: @ini_existing; + fill: var(--color-glow-primary); } } @@ -131,14 +132,7 @@ nav#dokuwiki__pagetools { vertical-align: middle; border: solid 1px transparent; margin: @page-tools_svg-space; - - @media @screen_min-md { - fill: @ini_nav_menu_color; - } - - @media @screen_max-md { - fill: @ini_existing; - } + fill: var(--color-foreground); } &.top { @@ -151,11 +145,12 @@ nav#dokuwiki__pagetools { &:hover { ul { box-shadow: @box-shadow; // @box-shadow-offset; - background-color: @ini_background; - border-color: @wikiicons-border; + background-color: var(--color-shade-1); + border-color: var(--color-shade-4); + border-radius: 0.5rem; li { - color: @ini_existing; + color: var(--color-foreground); a { box-shadow: none; @@ -166,17 +161,21 @@ nav#dokuwiki__pagetools { svg { border: solid 1px transparent; border-radius: @ini_default_border_radius; - fill: @ini_existing; + fill: var(--color-foreground); transition: @transition background-color, @transition border-color, @transition fill; } &:hover, &:focus, &:active { + color: var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); + svg { - background-color: @ini_existing; - border-color: @ini_existing; - fill: @ini_background; + background-color: transparent; + border: none; + fill: var(--color-glow-primary); } } diff --git a/css/area_nav-usertools.less b/css/area_nav-usertools.less index fdba9c3..2762329 100755 --- a/css/area_nav-usertools.less +++ b/css/area_nav-usertools.less @@ -76,23 +76,14 @@ &.user { position: relative; display: table-cell; - background-color: @ini_background_site; - border: solid 1px @wikiicons-border; + background-color: var(--color-shade-1); + border: solid 1px var(--color-shade-2); border-radius: @ini_default_border_radius; // @ini_default_border_radius vs. @fix_border-radius - color: @ini_text_webframe; + color: var(--color-foreground); padding-right: .3rem; - @media @screen_min-md { - padding-top: .35rem; - } - @media @screen_max-md { min-height: @toggle-size; - padding-top: .3rem; - } - - @media @screen_max-sm { - padding-top: .35rem; } @media @screen_max-xs { @@ -102,14 +93,12 @@ overflow: hidden; white-space: nowrap; margin: -1px 0 0; - padding-top: .4rem; } @media @screen_max-xxs { left: -10px; right: 0; width: auto; - padding-top: .35rem; } > a { @@ -119,9 +108,9 @@ position: relative; height: 1rem; // for IE11 overflow: visible; - background: @ini_nav_menu_hover_bg; // for removing bg-image + background: var(--color-shade-1); // for removing bg-image border: 0 none; - color: @ini_nav_menu_hover_color; + color: var(--color-foreground); text-indent: 0; font-size: inherit; margin-right: -.3rem; @@ -158,7 +147,7 @@ right: -1px; width: auto; opacity: 0; - border: solid 1px @ini_nav_menu_hover_color; + border: solid 1px var(--color-shade-2); border-radius: @ini_default_border_radius; // @ini_default_border_radius vs. @fix_border-radius color: inherit; transform: none; @@ -167,12 +156,15 @@ &:hover, &:focus, &:active { - background-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_bg; + background-color: transparent; + color: var(--color-glow-secondary); + filter: var(--filter-glow-secondary); + transition: var(--transition-glow); &::before { opacity: 1; - border-color: @ini_nav_menu_hover_color; + filter: var(--filter-glow-secondary); + border-color: var(--color-glow-secondary); } bdi, @@ -197,22 +189,10 @@ &::before { position: absolute; + top: 2px; left: -2px; - font-size: 1.4rem; + font-size: @font-size-default + (@font-scale-factor * 4); margin: 0; - - @media @screen_min-xxlg { - top: -.25rem; - } - - @media @screen_max-xxlg { - top: -.2rem; - } - - @media @screen_max-xs { - top: -.25rem; - - } } } } // user @@ -222,16 +202,29 @@ .menuitem, button { padding: 2px 0 0 2px; min-height: @toggle-size; // overrides button[type="submit"] styles - border: solid 1px @wikiicons-border; // overrides button[type="submit"] styles + background-color: var(--color-shade-1); + color: var(--color-foreground); + border: solid 1px var(--color-shade-2); // overrides button[type="submit"] styles .btn-hover(); - &:hover svg, &:focus svg { + &:hover, + &:active, + &:focus { + background-color: transparent; + border-color: var(--color-glow-secondary); + color: var(--color-glow-secondary); + filter: var(--filter-glow-secondary); + } + + &:hover svg, + &:active svg, + &:focus svg { transition: @transition fill; - fill: @ini_nav_menu_hover_bg; + fill: var(--color-glow-secondary); } svg { - fill: @ini_nav_menu_hover_color; + fill: var(--color-shade-1); height: @font-size-default + (@font-scale-factor * 4); } @@ -245,6 +238,7 @@ .hide-text-show-before(); .btn-hover(); + background-color: var(--color-shade-1); cursor: pointer; position: relative; line-height: 1; @@ -301,7 +295,7 @@ overflow: hidden; li.user { - color: @ini_background_site; + color: var(--color-background); bdi { position: absolute; @@ -311,8 +305,8 @@ &:before { transition: @transition background-color; - background-color: @ini_background_site; - color: @ini_nav_menu_color; + background-color: var(--color-shade-1); + color: var(--color-foreground); text-indent: 0; } } @@ -323,18 +317,18 @@ bdi { &:before { - background-color: @ini_nav_menu_hover_bg; - color: @ini_nav_menu_hover_color; + background-color: var(--color-shade-1); + color: var(--color-foreground); } } &:hover { - color: @ini_nav_menu_hover_color; + color: var(--color-glow-secondary); bdi { &:before { - background-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_bg; + background-color: transparent; + color: var(--color-glow-secondary); } } } diff --git a/css/area_recent.less b/css/area_recent.less index 78e97dd..9583da8 100644 --- a/css/area_recent.less +++ b/css/area_recent.less @@ -11,11 +11,13 @@ color: @color-editBox; &.positive { - background-color: #cfc; + background-color: var(--color-success); + color: var(--color-background); } &.negative { - background-color: #fdd; + background-color: var(--color-error); + color: var(--color-foreground); } } } @@ -67,11 +69,10 @@ .diffnav { a { - background-color: @ini_background_site; - border: solid 1px @ini_background_site; - border-radius: @ini_default_border_radius; - color: @ini_nav_menu_color; - transition: @transition background-color, @transition color, @transition border-color; + background-color: var(--color-background); + border: solid 1px var(--color-background); + border-radius: 0.5rem; + color: var(--color-foreground); &::before { background-color: inherit; @@ -82,9 +83,11 @@ &:hover, &:focus, &:active { - background-color: @ini_nav_menu_color; - border: solid 1px @ini_nav_menu_color; - color: @ini_background_site; + background-color: transparent; + border-color: var(--color-glow-primary); + color: var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); &::before { background-color: inherit; @@ -95,10 +98,8 @@ } table.diff { - background-color: #fff; - border: solid 1px #fff; - border-top-width: 10px; - border-bottom-width: 10px; + background-color: var(--color-background); + border: none; &.diff_inline { border-top-width: 0; @@ -110,8 +111,8 @@ } th { - background-color: @ini_background; - color: @ini_text; + background-color: var(--color-background); + color: var(--color-foreground); padding-top: 10px; padding-bottom: 10px; @@ -121,30 +122,33 @@ } td { + background-color: transparent; + color: var(--color-text-1); + &.diff-blockheader { - background-color: #cfc; - color: @color-editBox; + background-color: transparent; + color: var(--color-foreground); } &.diff-context { - background-color: #eee; - color: @color-editBox; + background-color: transparent; + color: var(--color-text-1); } } .diff-addedline { - background-color: #cfc; - color: @color-editBox; + background-color: var(--color-success-highlight); + color: var(--color-foreground); strong { background-color: transparent; - color: #f00; + color: var(--color-success) !important; } } .diff-deletedline { - background-color: #fdd; - color: @color-editBox; + background-color: var(--color-error-highlight); + color: var(--color-foreground); * { color: inherit; @@ -152,8 +156,12 @@ strong { background-color: transparent; - color: #f00; + color: var(--color-error) !important; } } + + .diff-lineheader { + background-color: transparent; + } } } diff --git a/css/area_tabs.less b/css/area_tabs.less index 0912399..8b98f02 100644 --- a/css/area_tabs.less +++ b/css/area_tabs.less @@ -8,14 +8,22 @@ li:not([class~="active"]) { strong, a { - color: @ini_text_neu; transition: @transition background-color, @transition color; } + a { + background-color: var(--color-shade-2); + color: var(--color-accent-1); + } + strong { + background-color: var(--color-shade-3); + color: inherit; + } + a:hover, a:focus, a:active { - color: @ini_text; + color: var(--color-accent-3); } } } diff --git a/css/area_togglelink.less b/css/area_togglelink.less index 10a47bc..9a12b47 100755 --- a/css/area_togglelink.less +++ b/css/area_togglelink.less @@ -8,52 +8,44 @@ top: 0; bottom: -1px; width: 2rem; - left: -(@margin-default); + left: -(@margin-default + 0.25rem); @media @screen_max-md { display: none; } a { - .fontello-double(); - .icon-right-bold(); - .icon-left-bold(); - - .display-flex(); - .flex-direction(); - .justify-content(); + position: absolute; + inset: 0; width: @margin-default; height: 100%; - background-color: @ini_button_background; - border: solid 1px @ini_button_background; - border-radius: @ini_default_border_radius 0 0 @ini_default_border_radius; // @ini_default_border_radius vs. @fix_border-radius - color: @ini_button_color; + background-color: transparent; + border: solid 1px var(--color-shade-4); + border-right-style: none; + border-radius: 0.5rem 0 0 0.5rem; + color: var(--color-shade-4); text-decoration: none; transition: @transition color, @transition background-color, @transition border-color; - &::before, - &::after { - width: 100%; - opacity: .6; - font-size: 1rem; - line-height: 1; - text-align: center; - margin: 0; - transition: @transition opacity; - } - &::before { - opacity: 1; - font-size: 1.25rem; + content: ''; + display: block; + position: absolute; + inset: 0.3rem; + mask-size: contain; + mask-position: center; + mask-repeat: no-repeat; + background-color: currentColor; + mask-image: url('img/arrow_left.svg'); + } &:hover, &:focus, &:active { - background-color: @ini_button_color; - border-color: @ini_button_background; - color: @ini_button_background; + border-color: var(--color-glow-primary); + color: var(--color-glow-primary); text-decoration: none; * { @@ -61,43 +53,24 @@ text-decoration: none; } - &::after { - opacity: 0; - } + filter: var(--filter-glow-primary); + transition: var(--transition-glow); + } } /* + + + toggle out + + + */ + .wide-content & { left: 0; a { - background-color: @ini_button_background; - border-color: @ini_button_background; - border-radius: 0 @ini_default_border_radius @ini_default_border_radius 0; // @ini_default_border_radius vs. @fix_border-radius + border-radius: 0 0.5rem 0.5rem 0; + border-style: solid; + border-left-style: none; &::before { - opacity: .6; - font-size: 1rem; - } - - &::after { - opacity: 1; - font-size: 1.25rem; - } - - &:hover, - &:focus, - &:active { - background-color: @ini_button_color; - - &::before { - opacity: 0; - } - - &::after { - opacity: 1; - } + mask-image: url('img/arrow_right.svg'); } } } diff --git a/css/base.less b/css/base.less index 752d451..5b50fb6 100755 --- a/css/base.less +++ b/css/base.less @@ -5,10 +5,10 @@ /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ /* global vars */ /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ -@font_family_screen: arial, sans-serif; -@font_family_print: "Times New Roman", serif; +@font_family_screen: "Athiti", ui-sans, sans-serif; +@font_family_print: "Athiti", ui-sans, sans-serif; -@nav_direct_background: @ini_background; +@nav_direct_background: var(--color-background); @nav_direct_color: @ini_existing; @background_darker: rgba(230,230,230, .2); @@ -36,7 +36,7 @@ @box-shadow-bottom: 0 .1em .5em rgba(153,153,153,.5); // qc-wrapper (breadcrumb), struct inline-editor /* + + + for programmers customizing + + + */ -@fix_border-radius: 3px; // inputs, editbox (textarea), buttons, content, code, quicksearch, msg +@fix_border-radius: 0.5rem; // inputs, editbox (textarea), buttons, content, code, quicksearch, msg @toggle-showsidebar_width: 3.47rem; // shown sidebar after toggle @@ -66,7 +66,7 @@ /* edit mode */ @highlight-odd-ini_text: fade(@ini_background, 95%); @highlight-even-ini_text: fade(@ini_text, 5%); -@color-editBox: #252525; // editmode for tables, revision states +@color-editBox: var(--color-foreground); // editmode for tables, revision states //@nolinkedicon-ini_background: fade(@ini_background_site, 10%); //@opacity-ini_nav_menu_color: fade(@ini_nav_menu_color, 40%); @@ -170,6 +170,100 @@ +/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ +/* fonts */ +/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ + +@font-face { + font-family: "Athiti"; + font-weight: 700; + src: url("fonts/athiti/Athiti-Bold.woff2") format("woff2"); +} + +@font-face { + font-family: "Athiti"; + font-weight: 600; + src: url("fonts/athiti/Athiti-SemiBold.woff2") format("woff2"); +} + +@font-face { + font-family: "Athiti"; + font-weight: 500; + src: url("fonts/athiti/Athiti-Medium.woff2") format("woff2"); +} + +@font-face { + font-family: "Athiti"; + font-weight: 400; + src: url("fonts/athiti/Athiti-Regular.woff2") format("woff2"); +} + +@font-face { + font-family: "Athiti"; + font-weight: 300; + src: url("fonts/athiti/Athiti-Light.woff2") format("woff2"); +} + +@font-face { + font-family: "Athiti"; + font-weight: 200; + src: url("fonts/athiti/Athiti-ExtraLight.woff2") format("woff2"); +} + +@font-face { + font-family: "Departure Mono"; + src: url("fonts/departuremono/DepartureMono-Regular.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 100; + src: url("fonts/argonglow/ArgonGlow-Thin.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 200; + src: url("fonts/argonglow/ArgonGlow-ExtraLight.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 300; + src: url("fonts/argonglow/ArgonGlow-Light.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 400; + src: url("fonts/argonglow/ArgonGlow-Regular.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 500; + src: url("fonts/argonglow/ArgonGlow-Medium.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 600; + src: url("fonts/argonglow/ArgonGlow-SemiBold.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + font-weight: 700; + src: url("fonts/argonglow/ArgonGlow-Bold.woff2") format("woff2"); +} + +@font-face { + font-family: "Argon Glow"; + src: url("fonts/argonglow/ArgonGlow-VariableVF.woff2") format("woff2"); + font-weight: 100 900; +} + + /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ /* all media */ /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ @@ -288,11 +382,303 @@ nav > ul { } } +/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ +/* variables */ +/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ + +:root { + --color-neutral-50: #F2F0F5; + --color-neutral-100: #D1C6E0; + --color-neutral-200: #B2A0CB; + --color-neutral-300: #957EB5; + --color-neutral-400: #7A60A0; + --color-neutral-500: #61468B; + --color-neutral-600: #4B3176; + --color-neutral-700: #371F60; + --color-neutral-800: #26114B; + --color-neutral-900: #180736; + --color-neutral-950: #0C011F; + --color-argon-50: #E1ABC9; + --color-argon-100: #DA87B5; + --color-argon-200: #D464A1; + --color-argon-300: #CD448F; + --color-argon-400: #C6257D; + --color-argon-500: #B0166F; + --color-argon-600: #9A0A61; + --color-argon-700: #830755; + --color-argon-800: #6D0449; + --color-argon-900: #56023C; + --color-argon-950: #3F012D; + --color-krypton-50: #B2D9EA; + --color-krypton-100: #8CC9E4; + --color-krypton-200: #69BADE; + --color-krypton-300: #4BADD8; + --color-krypton-400: #2493C2; + --color-krypton-500: #167FAC; + --color-krypton-600: #0A6C96; + --color-krypton-700: #075C81; + --color-krypton-800: #044C6B; + --color-krypton-900: #023C55; + --color-krypton-950: #012C3F; + --color-green-50: #C0F49A; + --color-green-100: #A7E57A; + --color-green-200: #8FD75D; + --color-green-300: #7AC843; + --color-green-400: #66B92D; + --color-green-500: #54AA18; + --color-green-600: #47990F; + --color-green-700: #397E0A; + --color-green-800: #2B6206; + --color-green-900: #1F4703; + --color-green-950: #122B01; + --color-red-50: #E6AFAF; + --color-red-100: #DD9090; + --color-red-200: #D57272; + --color-red-300: #CC5757; + --color-red-400: #C33D3D; + --color-red-500: #BB2626; + --color-red-600: #B21010; + --color-red-700: #950808; + --color-red-800: #780404; + --color-red-900: #5C0202; + --color-red-950: #3F0101; + + --color-white: #FFFFFF; + + --color-dark-foreground: var(--color-neutral-50); + --color-dark-background: var(--color-neutral-950); + --color-dark-shade-1: var(--color-neutral-900); + --color-dark-shade-2: var(--color-neutral-800); + --color-dark-shade-3: var(--color-neutral-700); + --color-dark-shade-4: var(--color-neutral-600); + --color-dark-text-1: var(--color-neutral-200); + --color-dark-text-2: var(--color-neutral-300); + --color-dark-text-3: var(--color-neutral-400); + --color-dark-text-4: var(--color-neutral-500); + --color-dark-primary: var(--color-argon-400); + --color-dark-secondary: var(--color-krypton-300); + --color-dark-error: var(--color-red-500); + --color-dark-error-highlight: var(--color-red-950); + --color-dark-success: var(--color-green-500); + --color-dark-success-highlight: var(--color-green-950); + --color-dark-warning: #efb100; + --color-dark-highlight: #efb10060; + --color-dark-accent-1: #60a5f9; + --color-dark-accent-2: #d381f7; + --color-dark-accent-3: #ff7975; + + --color-light-foreground: var(--color-neutral-950); + --color-light-background: var(--color-neutral-50); + --color-light-shade-1: var(--color-neutral-100); + --color-light-shade-2: var(--color-neutral-200); + --color-light-shade-3: var(--color-neutral-300); + --color-light-shade-4: var(--color-neutral-400); + --color-light-text-1: var(--color-neutral-800); + --color-light-text-2: var(--color-neutral-700); + --color-light-text-3: var(--color-neutral-600); + --color-light-text-4: var(--color-neutral-500); + --color-light-primary: var(--color-argon-600); + --color-light-secondary: var(--color-krypton-500); + --color-light-error: var(--color-red-600); + --color-light-error-highlight: var(--color-red-50); + --color-light-success: var(--color-green-600); + --color-light-success-highlight: var(--color-green-50); + --color-light-warning: #d08700; + --color-light-highlight: #d0870060; + --color-light-accent-1: #303EC0; + --color-light-accent-2: #6c366c; + --color-light-accent-3: #932f0a; + + --color-cmyk-primary: var(--color-dark-primary); + --color-cmyk-secondary: var(--color-dark-secondary); + + --text-xs: 0.75rem; + --text-sm: 0.875rem; + --text-base: 1rem; + --text-lg: 1.125rem; + --text-xl: 1.25rem; + --text-2xl: 1.5rem; + --text-3xl: 1.875rem; + --text-4xl: 2.25rem; + --text-5xl: 3rem; + + --container-3xs: 16rem; + --container-2xs: 18rem; + --container-xs: 20rem; + --container-sm: 24rem; + --container-md: 28rem; + --container-lg: 32rem; + --container-xl: 36rem; + --container-2xl: 42rem; + --container-3xl: 48rem; + --container-4xl: 56rem; + --container-5xl: 64rem; + --container-6xl: 72rem; + --container-7xl: 80rem; +} + +.fnButton { + border-radius: 0.5rem; + background-color: var(--color-shade-1); + transition: background-color 150ms; + color: var(--color-foreground); + font-size: 1.2em; + border: solid 0.1em var(--color-shade-1); + transition-property: filter, border-color; + transition-duration: 200ms; + transition-timing-function: ease-out; + + &:hover, &.active{ + .fnActiveButton(); + } +} + +.fnButtonSecondary { + &:hover, &.active{ + .fnActiveButtonSecondary(); + } +} + +.fnActiveButton { + background-color: transparent; + border: solid 0.1em var(--color-glow-primary); + text-decoration: none; + color: var(--color-glow-primary); + filter: var(--filter-glow-primary); + transition: var(--transition-glow); +} + +.fnActiveButtonSecondary { + background-color: transparent; + border: solid 0.1em var(--color-glow-secondary); + text-decoration: none; + color: var(--color-glow-secondary); + filter: var(--filter-glow-secondary); + transition: var(--transition-glow); +} + + /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ /* screen only */ /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */ @media screen { + + .dark { + + --color-foreground: var(--color-dark-foreground); + --color-background: var(--color-dark-background); + --color-shade-1: var(--color-dark-shade-1); + --color-shade-2: var(--color-dark-shade-2); + --color-shade-3: var(--color-dark-shade-3); + --color-shade-4: var(--color-dark-shade-4); + --color-text-1: var(--color-dark-text-1); + --color-text-2: var(--color-dark-text-2); + --color-text-3: var(--color-dark-text-3); + --color-text-4: var(--color-dark-text-4); + --color-primary: var(--color-dark-primary); + --color-secondary: var(--color-dark-secondary); + --color-error: var(--color-dark-error); + --color-error-highlight: var(--color-dark-error-highlight); + --color-success: var(--color-dark-success); + --color-success-highlight: var(--color-dark-success-highlight); + --color-warning: var(--color-dark-warning); + --color-highlight: var(--color-dark-highlight); + --color-accent-1: var(--color-dark-accent-1); + --color-accent-2: var(--color-dark-accent-2); + --color-accent-3: var(--color-dark-accent-3); + + --filter-glow-primary: drop-shadow(0 0 0.0625em var(--color-white)) drop-shadow(0 0 0.125em var(--color-primary)) drop-shadow(0 0 0.25em var(--color-primary)); + --filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-white)) drop-shadow(0 0 0.125em var(--color-secondary)) drop-shadow(0 0 0.25em var(--color-secondary)); + --color-glow-primary: var(--color-white); + --color-glow-secondary: var(--color-white); + --transition-glow: filter 150ms cubic-bezier(0,1.7,1,-0.3) 50ms, + border-color 150ms cubic-bezier(0,1.7,1,-0.3) 50ms; + + @media (prefers-reduced-motion) { + --transition-glow: filter 150ms, border-color 150ms; + } + + .light-only { + display: none; + } + + .dark-only { + display: initial; + } + } + + .light { + --color-foreground: var(--color-light-foreground); + --color-background: var(--color-light-background); + --color-shade-1: var(--color-light-shade-1); + --color-shade-2: var(--color-light-shade-2); + --color-shade-3: var(--color-light-shade-3); + --color-shade-4: var(--color-light-shade-4); + --color-text-1: var(--color-light-text-1); + --color-text-2: var(--color-light-text-2); + --color-text-3: var(--color-light-text-3); + --color-text-4: var(--color-light-text-4); + --color-primary: var(--color-light-primary); + --color-secondary: var(--color-light-secondary); + --color-error: var(--color-light-error); + --color-error-highlight: var(--color-light-error-highlight); + --color-success: var(--color-light-success); + --color-success-highlight: var(--color-light-success-highlight); + --color-warning: var(--color-light-warning); + --color-highlight: var(--color-light-highlight); + --color-accent-1: var(--color-light-accent-1); + --color-accent-2: var(--color-light-accent-2); + --color-accent-3: var(--color-light-accent-3); + + --filter-glow-primary: drop-shadow(0 0 0.0625em var(--color-argon-400)); + --filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-krypton-400)); + --color-glow-primary: var(--color-argon-950); + --color-glow-secondary: var(--color-krypton-950); + --transition-glow: filter 150ms cubic-bezier(0, 2, 1, -0.7) 50ms, + border-color 150ms cubic-bezier(0, 2, 1, -0.7) 50ms; + + @media (prefers-reduced-motion) { + --transition-glow: filter 150ms, border-color 150ms; + } + + .light-only { + display: initial; + } + + .dark-only { + display: none; + } + } + + @media (prefers-color-scheme: dark) { + html { + .dark(); + + &:has(#themeLight:checked) { + .light(); + } + } + #themeToggleDark { + display: none !important; + } + } + + @media (prefers-color-scheme: light) { + html { + .light(); + + &:has(#themeDark:checked) { + .dark(); + } + } + #themeToggleLight { + display: none !important; + } + } + + + html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; @@ -321,9 +707,28 @@ nav > ul { display: none; } - a:active, - a:hover { - outline: 0; + a { + color: var(--color-accent-1); + text-decoration: underline; + + &:hover, + &:active, + &:focus { + color: var(--color-accent-3); + text-decoration: none; + } + + &:visited { + color: var(--color-accent-2); + text-decoration: underline; + + &:hover, + &:active, + &:focus { + color: var(--color-accent-3); + text-decoration: none; + } + } } abbr[title] { @@ -351,7 +756,7 @@ nav > ul { kbd, pre, samp { - font-family: monospace, monospace; + font-family: "Departure Mono", ui-monospace, monospace; font-size: 1em; } @@ -420,7 +825,7 @@ nav > ul { html, body { font-family: @font_family_screen; - color: @ini_text; + color: var(--color-foreground); } } diff --git a/css/base_design.less b/css/base_design.less index cb9792f..2dfc1f1 100755 --- a/css/base_design.less +++ b/css/base_design.less @@ -5,7 +5,7 @@ html, body { - background-color: @ini_background_site; + background-color: var(--color-background); } /* highlight selected tool */ @@ -23,10 +23,23 @@ html, body { } .dokuwiki { + .tabs > ul li a, + ul.tabs li strong, + ul.tabs li a { + border-color: var(--color-shade-4); + } + ul.tabs::after { + border-color: var(--color-shade-4); + } + .page ol li, .page ul li, .aside ul li { - color: @ini_text; + color: var(--color-foreground); + + .li { + color: var(--color-foreground); + } } .pageId { @@ -41,7 +54,7 @@ html, body { font-size: @font-size-small; border: solid @ini_background_alt; border-width: 1px 1px 0; - background-color: @ini_background_site; + background-color: var(--color-background); color: @ini_text_alt; padding: .1em .35em; border-top-left-radius: 2px; @@ -55,7 +68,7 @@ html, body { clear: both; overflow: hidden; word-wrap: break-word; - background: @ini_background; + background: var(--color-background); color: inherit; padding: @page_padding-top @margin-default @margin-default; @@ -84,6 +97,7 @@ html, body { } /* license note under edit window */ + div.license { font-size: @font-size-small; line-height: @line-height-default; @@ -374,16 +388,11 @@ ol ol ol ol ol { .dokuwiki { table.inline tr:hover { th { - background-color: fade(@ini_background_alt, 50%); + background-color: var(--color-shade-3); } td { - background-color: fade(@ini_background_alt, 80%); - color: @ini_text_alt; - - *:not(button,a) { - color: @ini_text_alt; - } + background-color: var(--color-shade-2); } } } @@ -392,7 +401,7 @@ table { border-collapse: collapse; empty-cells: show; border-spacing: 0; - border: 1px solid @ini_border; + border: 1px solid var(--color-shade-4); font-size: @font-size-default; line-height: 140%; } @@ -411,13 +420,13 @@ td { padding: .3em .5em; margin: 0; vertical-align: top; - border: 1px solid @ini_border; + border: 1px solid var(--color-shade-4); } th { font-weight: bold; - background-color: @ini_background_alt; - color: @ini_text_alt; + background-color: var(--color-shade-1); + color: var(--color-foreground); text-align: left; a { @@ -429,22 +438,6 @@ th { text-align: right; } -a { - outline: none; - - &:link, - &:visited { - text-decoration: none; - color: @ini_link; // links to non wikipages (external links) - } - - &:hover, - &:focus, - &:active { - text-decoration: underline; - } -} - img { display: inline-block; border-width: 0; @@ -470,7 +463,7 @@ button img { hr { border-top: solid @ini_border; - border-bottom: solid @ini_background_site; + border-bottom: solid var(--color-background); border-width: 1px 0; height: 0; text-align: center; @@ -498,14 +491,13 @@ pre, code, samp, kbd { - font-family: Consolas, "Andale Mono WT", "Andale Mono", "Bitstream Vera Sans Mono", "Nimbus Mono L", Monaco, "Courier New", monospace; + font-family: "Departure Mono", ui-monospace, monospace; /* same font stack should be used for ".dokuwiki table.diff td" in _diff.css */ font-size: @font-size-default; direction: ltr; text-align: left; - background-color: @code-background; - color: @noopentasks-color; - box-shadow: inset 0 0 .3em @noopentasks-border; + background-color: var(--color-shade-1); + color: var(--color-foreground); border-radius: @fix_border-radius; padding-left: @small-spacing; padding-right: @small-spacing; @@ -518,26 +510,11 @@ kbd { span { color: inherit; } - - a { - &:link, - &:visited { - color: inherit; - text-decoration: underline; - } - - &:hover, - &:focus, - &:active { - text-decoration: none; - } - } } pre { overflow: auto; word-wrap: normal; - border: 1px solid @noopentasks-border; font-size: @font-size-default; line-height: 140%; padding: .7em 1em; diff --git a/css/base_mixins.less b/css/base_mixins.less index 6d3b840..e664bf3 100755 --- a/css/base_mixins.less +++ b/css/base_mixins.less @@ -136,16 +136,18 @@ /* + + + + + small icon-buttons (breadcrumb, page-header) + + + + + */ .btn-hover { - background-color: @ini_nav_menu_hover_bg; - color: @ini_nav_menu_hover_color; - transition: @transition color, @transition background-color, @transition border-color; + background-color: var(--color-shade-1); + border-color: var(--color-shade-2); + color: var(--color-foreground); + transition: var(--transition-glow); &:hover, &:active, &:focus { - background-color: @ini_nav_menu_hover_color; - border-color: @ini_nav_menu_hover_color; - color: @ini_nav_menu_hover_bg; + background-color: transparent; + border-color: var(--color-glow-secondary); + color: var(--color-glow-secondary); + filter: var(--filter-glow-secondary); .prefix { color: inherit; diff --git a/css/icons.less b/css/icons.less new file mode 100644 index 0000000..cc0087d --- /dev/null +++ b/css/icons.less @@ -0,0 +1,60 @@ + +i[data-icon] { + display: inline-block; + width: 1em; + height: 1em; + flex-shrink: 0; + position: relative; + box-sizing: content-box; + + &::before { + content: ''; + display: block; + width: 100%; + height: 100%; + mask-size: contain; + mask-position: center; + mask-repeat: no-repeat; + background-color: currentColor; + } + + &[data-icon='arrow-left']::before { + mask-image: url('img/arrow_left.svg'); + } + + &[data-icon='arrow-up']::before { + mask-image: url('img/arrow_up.svg'); + } + + &[data-icon='arrow-right']::before { + mask-image: url('img/arrow_right.svg'); + } + + &[data-icon='arrow-down']::before { + mask-image: url('img/arrow_down.svg'); + } + + &[data-icon='info']::before { + mask-image: url('img/info.svg'); + } + + &[data-icon='home']::before { + mask-image: url('img/home.svg'); + } + + &[data-icon='menu-small']::before { + mask-image: url('img/menu_small.svg'); + } + + &[data-icon='light']::before { + mask-image: url('img/lightbulb.svg'); + } + + &[data-icon='warning']::before { + mask-image: url('img/warning.svg'); + } + + &[data-icon='creature']::before { + mask-image: url('img/creature.svg'); + } +} \ No newline at end of file diff --git a/css/plugins/configmanager.less b/css/plugins/configmanager.less index 903e7ca..972744d 100644 --- a/css/plugins/configmanager.less +++ b/css/plugins/configmanager.less @@ -9,9 +9,10 @@ min-width: 100%; overflow-x: auto; box-sizing: border-box; - background-color: @background_darker; + background-color: var(--color-background); margin-left: 0; margin-right: 0; + color: var(--color-foreground) } .selectiondefault { @@ -20,11 +21,24 @@ } tr { + a { + color: var(--color-shade-4); + } + .input { background-color: transparent; color: inherit; } + input, select, textarea { + background-color: var(--color-background); + color: var(--color-foreground); + } + + select.edit { + padding: 0 0.3em; + } + &:hover { td { color: inherit; @@ -36,13 +50,17 @@ .input { background-color: transparent; } + + input, select, textarea { + background-color: var(--color-shade-1); + } } td.label { padding: .8em 0 1.2em 1em; span.outkey { - background-color: @ini_background; + background-color: var(--color-background); color: inherit; font-size: (@font-size-small - .06); font-weight: bold; diff --git a/css/plugins/data.less b/css/plugins/data.less index 28d238c..561c488 100644 --- a/css/plugins/data.less +++ b/css/plugins/data.less @@ -23,7 +23,7 @@ button { min-height: 1rem; height: 1.8em; - background-color: @ini_background; + background-color: var(--color-background); border-top: solid 1px @ini_button_background; border-color: @ini_border; border-radius: 0 0 @fix_border-radius @fix_border-radius; @@ -40,7 +40,7 @@ &:active { background-color: @ini_existing; border-color: @ini_existing; - color: @ini_background; + color: var(--color-background); } } } diff --git a/css/plugins/do_tasks.less b/css/plugins/do_tasks.less index b09d449..2fa828b 100755 --- a/css/plugins/do_tasks.less +++ b/css/plugins/do_tasks.less @@ -53,7 +53,7 @@ .noopentasks { span { - background-color: @ini_background_site; + background-color: var(--color-background); border-color: @noopentasks-border; color: @ini_text_webframe; } @@ -86,7 +86,7 @@ } table.inline { - background-color: #FFF; + background-color: var(--color-background); margin-top: .5rem; @media @screen_max-sm { diff --git a/css/plugins/edit.less b/css/plugins/edit.less index 88a62a5..b3092d7 100644 --- a/css/plugins/edit.less +++ b/css/plugins/edit.less @@ -7,14 +7,12 @@ #dokuwiki__content { div.section_highlight { clear: right; - background: repeating-linear-gradient( - -45deg, - @highlight-odd-ini_text, - @highlight-odd-ini_text 10px, - @highlight-even-ini_text 10px, - @highlight-even-ini_text 20px, - ); - border-color: @ini_background_page_header; + background: repeating-linear-gradient(-45deg, + var(--color-shade-1), + var(--color-shade-1) 10px, + var(--color-background) 10px, + var(--color-background) 20px,); + border-color: var(--color-background); } // "section edit button" and "editbutton_table edit button" @@ -23,11 +21,23 @@ font-size: 100%; margin-top: .5rem; margin-bottom: .5rem; + + &::after { + + } + + &:hover { + &::after { + border: none; + } + } } div.editBox { - background-color: #FFF; - border: solid 2px #FFF; + background-color: var(--color-background); + border: solid 2px var(--color-shade-4); + border-radius: @fix_border-radius; + padding: 0.5rem; .editButtons { display: inline-block; @@ -40,11 +50,13 @@ white-space: normal; display: block; width: 100%; + span { display: inline-block; padding-bottom: .4rem; } - input#edit__summary{ + + input#edit__summary { max-width: 100%; box-sizing: border-box; } diff --git a/css/plugins/edittable.less b/css/plugins/edittable.less index f67dfe6..144270b 100644 --- a/css/plugins/edittable.less +++ b/css/plugins/edittable.less @@ -4,6 +4,29 @@ /* + + + + + global + + + + + */ #dokuwiki__content.main-content { + #edittable__editor { + th, + .handsontable th { + border-color: var(--color-shade-4); + background-color: var(--color-shade-1); + color: var(--color-foreground); + + &.ht__highlight { + background-color: var(--color-shade-2); + } + } + + td { + border-color: var(--color-shade-4); + background-color: var(--color-background); + color: var(--color-foreground); + + &.current { + background-color: var(--color-shade-1); + } + } + } + div.editbutton_table { position: relative; // for IE float: left; @@ -13,22 +36,24 @@ button, input.button { min-height: 1rem; - background-color: @ini_background; - border-top: solid 1px @ini_button_background; - border-color: @ini_border; - border-radius: 0 0 @fix_border-radius @fix_border-radius; - color: @ini_existing; + background-color: var(--color-shade-1); + border: solid 0.1em var(--color-shade-2); + border-radius: 0.5rem; + color: var(--color-foreground); font-size: @font-size-small; - margin-top: -1px; // for best position of edit-tab beneath table - padding-right: .3em; - transition: @transition background-color, @transition border-color, @transition color; + margin: 0; + margin-top: 0.5rem; + padding: 0.2rem 0.4rem; + height: auto; &:hover, &:focus, &:active { - background-color: @ini_existing; - border-color: @ini_existing; - color: @ini_background; + background-color: transparent; + color: var(--color-glow-primary); + border-color: var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); } } } diff --git a/css/plugins/extension__manager.less b/css/plugins/extension__manager.less index eae01b4..1199b74 100644 --- a/css/plugins/extension__manager.less +++ b/css/plugins/extension__manager.less @@ -3,15 +3,64 @@ */ /* + + + + + global + + + + + */ -.dokuwiki #extension__manager { - .actions { - font-size: 0; +.dokuwiki { + #extension__manager { + .actions { + font-size: 0; - > button { - font-size: .92rem; - margin-left: .3rem; - padding-left: .3rem; - padding-right: .3rem; + > button { + font-size: .92rem; + margin-left: .3rem; + padding-left: .3rem; + padding-right: .3rem; + } + + p.permerror { + @media @screen_max-md { + flex-direction: column; + } + + display: flex; + align-items: start; + gap: 0.5rem; + background: none; + + &::before { + content: ""; + flex-shrink: 0; + margin-top: 0.3em; + width: 1em; + height: 1em; + mask-size: contain; + mask-position: center top; + mask-repeat: no-repeat; + mask-image: url(img/warning.svg); + background-color: var(--color-warning); + } + } + } + + ul.tabs { + li.active { + a { + background-color: var(--color-shade-3); + color: var(--color-foreground); + border-color: var(--color-shade-4); + } + } + } + + .panelHeader { + background-color: var(--color-shade-2); + } + } + + #extension__list { + .extensionList { + + li { + color: var(--color-foreground); + } } } } diff --git a/css/plugins/magic-matcher.less b/css/plugins/magic-matcher.less index fee9b2e..865897f 100755 --- a/css/plugins/magic-matcher.less +++ b/css/plugins/magic-matcher.less @@ -50,7 +50,7 @@ min-height: @height-context-bar; box-sizing: border-box; box-shadow: @box-shadow; - background-color: @ini_background; + background-color: var(--color-background); border-radius: 0 0 @ini_default_border_radius @ini_default_border_radius; font-size: @font-size-default; padding: .8em 1em .5em; diff --git a/css/plugins/mediamanager.less b/css/plugins/mediamanager.less index d7384d6..e591949 100644 --- a/css/plugins/mediamanager.less +++ b/css/plugins/mediamanager.less @@ -4,10 +4,18 @@ /* + + + + + global + + + + + */ #mediamanager__page { - .namespaces h2 { - bottom: 0; - line-height: 100%; - margin-bottom: -1px; + .namespaces{ + h2 { + bottom: 0; + line-height: 100%; + margin-bottom: -1px; + background-color: var(--color-shade-3); + color: var(--color-foreground); + border-color: var(--color-shade-4); + } + .panelHeader { + border-color: var(--color-shade-4); + } } #media__tree ul li img { @@ -23,6 +31,32 @@ margin-left: 0; } } + + .panelHeader { + background-color: var(--color-shade-2); + } + + .filelist .panelContent ul li{ + background-color: var(--color-shade-2); + color: var(--color-foreground); + + &:hover { + background-color: var(--color-shade-4); + border: none; + } + } + + .file dl { + dt{ + background-color: var(--color-shade-2); + padding: 0.2em; + } + + dd{ + background-color: var(--color-shade-1); + padding: 0.2em; + } + } } /* + + + + + + + + + + + + + + + + + + + + + + + + + + */ diff --git a/css/plugins/struct.less b/css/plugins/struct.less index f6b62ad..6742bf3 100755 --- a/css/plugins/struct.less +++ b/css/plugins/struct.less @@ -69,7 +69,7 @@ background-color: @ini_existing; background-image: url("svg.php?svg=file-export.svg&f=background"); border-color: @ini_existing; - //color: @ini_background; + //color: var(--color-background); text-decoration: none; } } diff --git a/css/plugins/tabinclude.less b/css/plugins/tabinclude.less index 42994f5..b8ef834 100644 --- a/css/plugins/tabinclude.less +++ b/css/plugins/tabinclude.less @@ -32,7 +32,7 @@ div#dwpl-ti-container { &.selected { position: relative; - background-color: @ini_background; + background-color: var(--color-background); color: @ini_text; } } @@ -43,7 +43,7 @@ div#dwpl-ti-container { position: relative; overflow: auto; box-shadow: @box-shadow; - background-color: @ini_background; + background-color: var(--color-background); border: solid 1px @ini_border; border-radius: 0; margin-top: -1px; diff --git a/css/plugins/tablelayout.less b/css/plugins/tablelayout.less index 9aa6149..9e69a36 100644 --- a/css/plugins/tablelayout.less +++ b/css/plugins/tablelayout.less @@ -8,7 +8,7 @@ #dokuwiki__content.main-content .secedit.editbutton_table{ a.button.print { min-height: 1rem; - background-color: @ini_background; + background-color: var(--color-background); border-radius: 0 @ini_default_border_radius; border-top: solid 1px; border-color: @ini_border; diff --git a/css/plugins/translation.less b/css/plugins/translation.less index f777b93..eb6a464 100644 --- a/css/plugins/translation.less +++ b/css/plugins/translation.less @@ -1,6 +1,7 @@ /** * This file provides styles for the translation plugin */ +@import "../base"; .dokuwiki div.plugin_translation { @@ -9,17 +10,41 @@ position: relative; float: none; + box-sizing: border-box; + width: 100%; + padding-bottom: 0.5rem; + height: 4rem; + + * { clear: both; padding-top: 1em; // as h1 } ul li { - a.wikilink1:link, - a.wikilink1:hover, - a.wikilink1:active, - a.wikilink1:visited { - background-color: @ini_link; + margin-top: 0; + + // active language + span.wikilink1 { + .fnButton(); + .fnActiveButton(); + cursor: default; + } + + a.wikilink1{ + .fnButton(); + } + + span.wikilink2{ + .fnButton(); + .fnButtonSecondary(); + .fnActiveButtonSecondary() + } + + a.wikilink2, + a.wikilink2:visited{ + .fnButton(); + .fnButtonSecondary(); + background-color: var(--color-shade-4); } } } diff --git a/css/plugins/wrap.less b/css/plugins/wrap.less new file mode 100644 index 0000000..0c0948c --- /dev/null +++ b/css/plugins/wrap.less @@ -0,0 +1,119 @@ +.dokuwiki { + span.wrap_em { + color: var(--color-error); + } + + span.wrap_hi { + background-color: var(--color-highlight); + color: var(--color-foreground); + } + + span.wrap_lo { + color: var(--color-text-2); + } + + div.plugin_wrap { + &.wrap_box { + background-color: var(--color-shade-1); + color: var(--color-foreground); + } + + &.wrap_info, + &.wrap_tip, + &.wrap_important, + &.wrap_alert, + &.wrap_help, + &.wrap_download, + &.wrap_todo { + @media @screen_max-md { + flex-direction: column; + } + + display: flex; + align-items: start; + gap: 1rem; + border: none; + border-left: solid 0.5rem var(--color-shade-4); + border-radius: 0.5rem; + padding: 1em; + background-image: none; + background-color: var(--color-shade-1); + + &::before { + content: ""; + flex-shrink: 0; + margin-top: 0.3em; + width: 2em; + height: 2em; + mask-size: contain; + mask-position: center top; + mask-repeat: no-repeat; + background-color: currentColor; + } + } + + &.wrap_info { + color: var(--color-foreground); + + &::before { + mask-image: url(img/info.svg); + } + } + + &.wrap_tip { + color: var(--color-foreground); + + &::before { + mask-image: url(img/lightbulb.svg); + } + } + + &.wrap_important { + border-left-color: var(--color-warning); + color: var(--color-foreground); + + &::before { + background-color: var(--color-warning); + mask-image: url(img/warning.svg); + } + } + + &.wrap_alert { + border-left-color: var(--color-error); + color: var(--color-foreground); + + &::before { + background-color: var(--color-error); + mask-image: url(img/power.svg); + } + } + + &.wrap_help { + border-left-color: var(--color-accent-1); + color: var(--color-foreground); + + &::before { + background-color: var(--color-accent-1); + mask-image: url(img/question.svg); + } + } + + &.wrap_download { + border-left-color: var(--color-success); + color: var(--color-foreground); + + &::before { + background-color: var(--color-success); + mask-image: url(img/arrow_down.svg); + } + } + + &.wrap_todo { + color: var(--color-foreground); + + &::before { + mask-image: url(img/tick_small.svg); + } + } + } +} diff --git a/css/template_admin.less b/css/template_admin.less index b912bc2..f085a35 100644 --- a/css/template_admin.less +++ b/css/template_admin.less @@ -49,7 +49,7 @@ svg { width: 26px; height: 26px; - border: solid 1px @ini_background; + border: solid 1px var(--color-background); border-radius: @ini_default_border_radius; fill: @ini_existing; transition: @transition background-color, @transition border-color, @transition fill; @@ -68,10 +68,10 @@ svg { background-color: @ini_existing; border-color: @ini_existing; - fill: @ini_background; + fill: var(--color-background); path { - fill: @ini_background; + fill: var(--color-background); } } } diff --git a/css/template_detail.less b/css/template_detail.less index f425221..0e06a5a 100644 --- a/css/template_detail.less +++ b/css/template_detail.less @@ -15,7 +15,7 @@ left: 0; display: inline-block; max-width: 100%; - color: @ini_button_color; + color: var(--color-foreground); margin: 0 auto 1.4em; &::before { @@ -25,7 +25,7 @@ display: block; width: 100%; box-sizing: border-box; - background: @ini_button_background; + background: var(--color-background); line-height: @line-height-default; padding: @margin-small; } @@ -33,7 +33,7 @@ img { margin: 0; display: block; - border: 1px dotted @ini_background_site; + border: solid 0.1rem transparent; position: relative; } @@ -44,10 +44,13 @@ &::before { content: attr(title); + border: solid 0.1rem var(--color-glow-primary); + transition: var(--transition-glow); + filter: var(--filter-glow-primary); } img { - border: 1px solid @ini_button_background; + border: solid 0.1rem var(--color-shade-4); } } } @@ -59,10 +62,10 @@ div.img_detail { @media screen { /* vertical minus margin of .img-detail corresponds to the padding of .page */ - background-color: @ini_background_page_header; - border: solid @ini_border_light; - border-width: 1px 0; + background-color: var(--color-shade-1); + border: solid 0.1em var(--color-shade-4); margin: @margin-default -(@margin-default); + color: var(--color-foreground); h1, h2, @@ -96,8 +99,8 @@ } dt { - background-color: @ini_highlight; - color: @ini_highlight_text; + background-color: none; + color: var(--color-foreground); @media @screen_min-xs { width: 33.3%; diff --git a/css/toollist.less b/css/toollist.less index c2f69d5..e9d5b14 100644 --- a/css/toollist.less +++ b/css/toollist.less @@ -23,7 +23,7 @@ svg { width: @font-size-default; vertical-align: middle; - fill: @ini_nav_menu_color; + fill: var(--color-foreground); margin-right: .2em; } } diff --git a/fonts/argonglow/ArgonGlow-Bold.woff2 b/fonts/argonglow/ArgonGlow-Bold.woff2 new file mode 100644 index 0000000..caf6ff6 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-Bold.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-ExtraLight.woff2 b/fonts/argonglow/ArgonGlow-ExtraLight.woff2 new file mode 100644 index 0000000..7dc6448 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-ExtraLight.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-Light.woff2 b/fonts/argonglow/ArgonGlow-Light.woff2 new file mode 100644 index 0000000..08a6637 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-Light.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-Medium.woff2 b/fonts/argonglow/ArgonGlow-Medium.woff2 new file mode 100644 index 0000000..83bb0d9 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-Medium.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-Regular.woff2 b/fonts/argonglow/ArgonGlow-Regular.woff2 new file mode 100644 index 0000000..601d465 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-Regular.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-SemiBold.woff2 b/fonts/argonglow/ArgonGlow-SemiBold.woff2 new file mode 100644 index 0000000..a88f939 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-SemiBold.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-Thin.woff2 b/fonts/argonglow/ArgonGlow-Thin.woff2 new file mode 100644 index 0000000..dc950fe Binary files /dev/null and b/fonts/argonglow/ArgonGlow-Thin.woff2 differ diff --git a/fonts/argonglow/ArgonGlow-VariableVF.woff2 b/fonts/argonglow/ArgonGlow-VariableVF.woff2 new file mode 100644 index 0000000..7d3aaf4 Binary files /dev/null and b/fonts/argonglow/ArgonGlow-VariableVF.woff2 differ diff --git a/fonts/argonglow/OFL b/fonts/argonglow/OFL new file mode 100644 index 0000000..1cdb289 --- /dev/null +++ b/fonts/argonglow/OFL @@ -0,0 +1,96 @@ +Copyright (c) 2025, The Argon Glow Project Authors (https://codeberg.org/kritzl/argon-glow), +Copyright (c) 2025, kritzl (kritzl@kritzl.dev), +Copyright (c) 2025, traumweh (traumweh@lyx.sh), +with Reserved Font Name "Argon Glow". + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting - in part or in whole - any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/fonts/athiti/Athiti-Bold.woff2 b/fonts/athiti/Athiti-Bold.woff2 new file mode 100644 index 0000000..4cc5810 Binary files /dev/null and b/fonts/athiti/Athiti-Bold.woff2 differ diff --git a/fonts/athiti/Athiti-ExtraLight.woff2 b/fonts/athiti/Athiti-ExtraLight.woff2 new file mode 100644 index 0000000..9bb6cea Binary files /dev/null and b/fonts/athiti/Athiti-ExtraLight.woff2 differ diff --git a/fonts/athiti/Athiti-Light.woff2 b/fonts/athiti/Athiti-Light.woff2 new file mode 100644 index 0000000..51f9e72 Binary files /dev/null and b/fonts/athiti/Athiti-Light.woff2 differ diff --git a/fonts/athiti/Athiti-Medium.woff2 b/fonts/athiti/Athiti-Medium.woff2 new file mode 100644 index 0000000..bc8b50a Binary files /dev/null and b/fonts/athiti/Athiti-Medium.woff2 differ diff --git a/fonts/athiti/Athiti-Regular.woff2 b/fonts/athiti/Athiti-Regular.woff2 new file mode 100644 index 0000000..c69c128 Binary files /dev/null and b/fonts/athiti/Athiti-Regular.woff2 differ diff --git a/fonts/athiti/Athiti-SemiBold.woff2 b/fonts/athiti/Athiti-SemiBold.woff2 new file mode 100644 index 0000000..726a075 Binary files /dev/null and b/fonts/athiti/Athiti-SemiBold.woff2 differ diff --git a/fonts/athiti/OFL b/fonts/athiti/OFL new file mode 100644 index 0000000..b0f4597 --- /dev/null +++ b/fonts/athiti/OFL @@ -0,0 +1,93 @@ +Copyright (c) 2015, Cadson Demak (info@cadsondemak.com) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/fonts/departuremono/DepartureMono-Regular.woff2 b/fonts/departuremono/DepartureMono-Regular.woff2 new file mode 100644 index 0000000..7d8b33b Binary files /dev/null and b/fonts/departuremono/DepartureMono-Regular.woff2 differ diff --git a/fonts/departuremono/LICENSE b/fonts/departuremono/LICENSE new file mode 100644 index 0000000..de52476 --- /dev/null +++ b/fonts/departuremono/LICENSE @@ -0,0 +1,93 @@ +Copyright 2022–2024 Helena Zhang (helenazhang.com). + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/img/LICENSE b/img/LICENSE new file mode 100644 index 0000000..7d4f96c --- /dev/null +++ b/img/LICENSE @@ -0,0 +1,427 @@ +Attribution-ShareAlike 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution-ShareAlike 4.0 International Public +License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution-ShareAlike 4.0 International Public License ("Public +License"). To the extent this Public License may be interpreted as a +contract, You are granted the Licensed Rights in consideration of Your +acceptance of these terms and conditions, and the Licensor grants You +such rights in consideration of benefits the Licensor receives from +making the Licensed Material available under these terms and +conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. BY-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + k. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + l. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + m. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part; and + + b. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + b. ShareAlike. + + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + including for purposes of Section 3(b); and + + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/img/arrow_down.svg b/img/arrow_down.svg new file mode 100644 index 0000000..56b4a9b --- /dev/null +++ b/img/arrow_down.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_down_left.svg b/img/arrow_down_left.svg new file mode 100644 index 0000000..e1b3007 --- /dev/null +++ b/img/arrow_down_left.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_down_right.svg b/img/arrow_down_right.svg new file mode 100644 index 0000000..56f308a --- /dev/null +++ b/img/arrow_down_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_left.svg b/img/arrow_left.svg new file mode 100644 index 0000000..1a35060 --- /dev/null +++ b/img/arrow_left.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_right.svg b/img/arrow_right.svg new file mode 100644 index 0000000..23fba2c --- /dev/null +++ b/img/arrow_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_up.svg b/img/arrow_up.svg new file mode 100644 index 0000000..34ec6cd --- /dev/null +++ b/img/arrow_up.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_up_left.svg b/img/arrow_up_left.svg new file mode 100644 index 0000000..923c5dd --- /dev/null +++ b/img/arrow_up_left.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/arrow_up_right.svg b/img/arrow_up_right.svg new file mode 100644 index 0000000..ab82e8b --- /dev/null +++ b/img/arrow_up_right.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/basket.svg b/img/basket.svg new file mode 100644 index 0000000..5dfc4a1 --- /dev/null +++ b/img/basket.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/bed.svg b/img/bed.svg new file mode 100644 index 0000000..bd22140 --- /dev/null +++ b/img/bed.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/clock.svg b/img/clock.svg new file mode 100644 index 0000000..9050282 --- /dev/null +++ b/img/clock.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/code.svg b/img/code.svg new file mode 100644 index 0000000..c283678 --- /dev/null +++ b/img/code.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/creature.svg b/img/creature.svg new file mode 100644 index 0000000..1ab0d45 --- /dev/null +++ b/img/creature.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/cross.svg b/img/cross.svg new file mode 100644 index 0000000..d0e63ad --- /dev/null +++ b/img/cross.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/cross_small.svg b/img/cross_small.svg new file mode 100644 index 0000000..d890ea0 --- /dev/null +++ b/img/cross_small.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/cup_1.svg b/img/cup_1.svg new file mode 100644 index 0000000..9020279 --- /dev/null +++ b/img/cup_1.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/cup_2.svg b/img/cup_2.svg new file mode 100644 index 0000000..0db73f7 --- /dev/null +++ b/img/cup_2.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/dect.svg b/img/dect.svg new file mode 100644 index 0000000..b061df2 --- /dev/null +++ b/img/dect.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/export.sh b/img/export.sh new file mode 100755 index 0000000..ba6d47d --- /dev/null +++ b/img/export.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +# This script can be used to automatically export all project files +# to ensure, they are a single path without any modifiers or other +# inkscape-dependent things. It will also remove unnecessary things +# from the SVGs. For this the script requires both inkscape and svgo +# to be installed. + +for infile in ./project_files/*.svg +do + outfile="./$(basename "$infile")" + + inkscape --actions="select-by-element: svg; + object-set-attribute: id, svg; + select-clear; + select-all: layers; + selection-ungroup; + select-clear; + select-all: no-groups; + object-stroke-to-path; + path-union; + object-set-attribute: id,path; + object-set-attribute: style,; + selection-group; + selection-ungroup; + export-plain-svg;" \ + --export-filename "$outfile" \ + --vacuum-defs "$infile" + + svgo --pretty "$outfile" +done diff --git a/img/external.svg b/img/external.svg new file mode 100644 index 0000000..92a7419 --- /dev/null +++ b/img/external.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/fairydust.svg b/img/fairydust.svg new file mode 100644 index 0000000..e847437 --- /dev/null +++ b/img/fairydust.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/file-export.svg b/img/file-export.svg index d1a3f2d..727df65 100644 --- a/img/file-export.svg +++ b/img/file-export.svg @@ -1 +1,6 @@ - \ No newline at end of file + + + + \ No newline at end of file diff --git a/img/flag.svg b/img/flag.svg new file mode 100644 index 0000000..539a20e --- /dev/null +++ b/img/flag.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/gluten.svg b/img/gluten.svg new file mode 100644 index 0000000..715037b --- /dev/null +++ b/img/gluten.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/hackertours.svg b/img/hackertours.svg new file mode 100644 index 0000000..ca88cc6 --- /dev/null +++ b/img/hackertours.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/hare_head.svg b/img/hare_head.svg new file mode 100644 index 0000000..e20029e --- /dev/null +++ b/img/hare_head.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/history.svg b/img/history.svg new file mode 100644 index 0000000..4b66dd4 --- /dev/null +++ b/img/history.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/home.svg b/img/home.svg new file mode 100644 index 0000000..6c4e2f1 --- /dev/null +++ b/img/home.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/hygene.svg b/img/hygene.svg new file mode 100644 index 0000000..a7db265 --- /dev/null +++ b/img/hygene.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/info.svg b/img/info.svg new file mode 100644 index 0000000..2c6c17d --- /dev/null +++ b/img/info.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/lightbulb.svg b/img/lightbulb.svg new file mode 100644 index 0000000..ee9e8df --- /dev/null +++ b/img/lightbulb.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/link.svg b/img/link.svg new file mode 100644 index 0000000..a88ab81 --- /dev/null +++ b/img/link.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/location.svg b/img/location.svg new file mode 100644 index 0000000..e299d03 --- /dev/null +++ b/img/location.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/lock.svg b/img/lock.svg new file mode 100644 index 0000000..6f32cac --- /dev/null +++ b/img/lock.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/login.svg b/img/login.svg new file mode 100644 index 0000000..efa6a28 --- /dev/null +++ b/img/login.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/logout.svg b/img/logout.svg new file mode 100644 index 0000000..18c84d2 --- /dev/null +++ b/img/logout.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/menu.svg b/img/menu.svg index db5d4df..dda9be4 100644 --- a/img/menu.svg +++ b/img/menu.svg @@ -1 +1,3 @@ - \ No newline at end of file + + + diff --git a/img/menu_small.svg b/img/menu_small.svg new file mode 100644 index 0000000..e5258de --- /dev/null +++ b/img/menu_small.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/merch.svg b/img/merch.svg new file mode 100644 index 0000000..f1e4512 --- /dev/null +++ b/img/merch.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/message.svg b/img/message.svg new file mode 100644 index 0000000..d89f9e4 --- /dev/null +++ b/img/message.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/microphone.svg b/img/microphone.svg new file mode 100644 index 0000000..041242d --- /dev/null +++ b/img/microphone.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/network.svg b/img/network.svg new file mode 100644 index 0000000..d746fb9 --- /dev/null +++ b/img/network.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/pen.svg b/img/pen.svg new file mode 100644 index 0000000..7586346 --- /dev/null +++ b/img/pen.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/pencil.svg b/img/pencil.svg index e3a4faa..7fae82b 100644 --- a/img/pencil.svg +++ b/img/pencil.svg @@ -1 +1,18 @@ - \ No newline at end of file + + + + + + + diff --git a/img/pin.svg b/img/pin.svg new file mode 100644 index 0000000..2b07c7a --- /dev/null +++ b/img/pin.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/plate_and_cutlery.svg b/img/plate_and_cutlery.svg new file mode 100644 index 0000000..e759c5a --- /dev/null +++ b/img/plate_and_cutlery.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/power.svg b/img/power.svg new file mode 100644 index 0000000..1e003d3 --- /dev/null +++ b/img/power.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/question.svg b/img/question.svg new file mode 100644 index 0000000..f904106 --- /dev/null +++ b/img/question.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/schedule.svg b/img/schedule.svg new file mode 100644 index 0000000..48c0c0e --- /dev/null +++ b/img/schedule.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/search.svg b/img/search.svg new file mode 100644 index 0000000..0e81215 --- /dev/null +++ b/img/search.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/settings.svg b/img/settings.svg new file mode 100644 index 0000000..410588b --- /dev/null +++ b/img/settings.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/signup.svg b/img/signup.svg new file mode 100644 index 0000000..6c20d48 --- /dev/null +++ b/img/signup.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/soldering_iron.svg b/img/soldering_iron.svg new file mode 100644 index 0000000..6c36a6e --- /dev/null +++ b/img/soldering_iron.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/tick.svg b/img/tick.svg new file mode 100644 index 0000000..6d5e5aa --- /dev/null +++ b/img/tick.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/tick_small.svg b/img/tick_small.svg new file mode 100644 index 0000000..cf7760e --- /dev/null +++ b/img/tick_small.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/ticket.svg b/img/ticket.svg new file mode 100644 index 0000000..d836a02 --- /dev/null +++ b/img/ticket.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/toast.svg b/img/toast.svg new file mode 100644 index 0000000..287b801 --- /dev/null +++ b/img/toast.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/train.svg b/img/train.svg new file mode 100644 index 0000000..6791f66 --- /dev/null +++ b/img/train.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/vegan.svg b/img/vegan.svg new file mode 100644 index 0000000..c65c83e --- /dev/null +++ b/img/vegan.svg @@ -0,0 +1,3 @@ + + + diff --git a/img/warning.svg b/img/warning.svg new file mode 100644 index 0000000..84bdef2 --- /dev/null +++ b/img/warning.svg @@ -0,0 +1,3 @@ + + + diff --git a/js/anchor.js b/js/anchor.js index 76907ba..6bbd854 100644 --- a/js/anchor.js +++ b/js/anchor.js @@ -2,8 +2,8 @@ jQuery(function () { jQuery('#dokuwiki__content.main-content').find('h1,h2,h3,h4,h5').append(function () { if (this.id) { return '' + - '' + - '' + + '' + + '' + '' + ''; } else { diff --git a/lang/de-informal/lang.php b/lang/de-informal/lang.php new file mode 100755 index 0000000..c39687d --- /dev/null +++ b/lang/de-informal/lang.php @@ -0,0 +1,107 @@ + .li'] = 'Top-level Listeneinträge in verschachtelten Listen'; + +$lang['header_layout'] = 'Layout des Headers anpassen:'; +$lang['header_layout_o_default'] = 'großer Header für langen Wiki Titel und Tagline'; +$lang['header_layout_o_compact'] = 'kompakter Header für kurzen Wiki Titel ohne Tagline'; + +$lang['autocollapse'] = 'Sidebar automatisch einklappen wenn Nicht-Inhaltsseiten angezigt werden, um mehr Platz zu haben.'; diff --git a/lang/de/lang.php b/lang/de/lang.php index 478cb44..c39687d 100755 --- a/lang/de/lang.php +++ b/lang/de/lang.php @@ -33,6 +33,8 @@ $lang['js']['meta_box_toc_none'] = 'kein Inhaltsverzeichnis vorhanden'; $lang['prefix_tasks_user'] = 'Ihre offenen Aufgaben: '; */ +$lang['custom_modeswitch'] = 'Lichtschalter'; + $lang['tab_tags'] = 'Tags'; $lang['tab_issues'] = 'Issues'; diff --git a/lang/en/lang.php b/lang/en/lang.php index af8c4b2..2c146f8 100755 --- a/lang/en/lang.php +++ b/lang/en/lang.php @@ -33,6 +33,8 @@ $lang['js']['meta_box_toc_none'] = 'no Table of Contents available'; $lang['prefix_tasks_user'] = 'Your open tasks: '; */ +$lang['custom_modeswitch'] = 'Light switch'; + $lang['tab_tags'] = 'Tags'; $lang['tab_issues'] = 'Issues'; diff --git a/main.php b/main.php index 7d00e4b..fdb3d9c 100755 --- a/main.php +++ b/main.php @@ -26,6 +26,17 @@ $showSidebar = true; + fullWidthClass();
-
- @@ -440,5 +417,14 @@ $classWideContent = (Template::getInstance())->fullWidthClass();
+ diff --git a/style.ini b/style.ini index 7a33bb4..8418c54 100755 --- a/style.ini +++ b/style.ini @@ -52,6 +52,7 @@ css/base_vars.less = all css/base.less = all +css/icons.less = all css/base_mixins.less = all css/base_fontello-icons.less = all css/base_structure.less = all @@ -117,6 +118,7 @@ css/plugins/data.less = all css/plugins/fastwiki.less = all css/plugins/tplinc.less = all css/plugins/translation.less = all +css/plugins/wrap.less = all ; _____________ print styles _____________ diff --git a/tpl/main-sidebar-nav.php b/tpl/main-sidebar-nav.php index b0cfc33..d97fa87 100644 --- a/tpl/main-sidebar-nav.php +++ b/tpl/main-sidebar-nav.php @@ -3,10 +3,37 @@ echo \dokuwiki\template\sprintdoc\Template::getInstance()->getNavigation(); ?>