diff --git a/frontend/src/routes/tags/TagList.svelte b/frontend/src/routes/tags/TagList.svelte index 38a1095..d0fe7f3 100644 --- a/frontend/src/routes/tags/TagList.svelte +++ b/frontend/src/routes/tags/TagList.svelte @@ -85,17 +85,6 @@ $effect(() => loadTags(id)); - - {#if error} {error} {/if} diff --git a/web/src/main/resources/web/css/default.css b/web/src/main/resources/web/css/default.css index a49e83a..97a51a4 100644 --- a/web/src/main/resources/web/css/default.css +++ b/web/src/main/resources/web/css/default.css @@ -7,6 +7,7 @@ a { color: orange; text-decoration: none; } + body { font-family: sans; background: black; @@ -36,6 +37,7 @@ button{ border-style: solid; border-color: yellow red red yellow; } + footer { position: fixed; bottom: 0; @@ -44,6 +46,7 @@ footer { margin: 5px; background: black; } + nav { position: sticky; z-index: 100; @@ -53,6 +56,7 @@ nav { margin: 0 0 10px 0; border-bottom: 1px solid orange; } + .error { background: red; color: black; @@ -239,6 +243,12 @@ textarea{ min-height: 1.3em; } +.taglist .tag{ + border: 1px solid orange; + border-radius: 5px; + padding: 5px; +} + .taglist .tag button{ background: transparent; color: orange; diff --git a/web/src/main/resources/web/css/winter.css b/web/src/main/resources/web/css/winter.css index 7c952fe..1f438e4 100644 --- a/web/src/main/resources/web/css/winter.css +++ b/web/src/main/resources/web/css/winter.css @@ -1,15 +1,18 @@ +@font-face { + font-family: "awesome"; + src: url("/fontawesome-webfont.woff"); +} + a { color: black; + text-decoration: none; } body { + font-family: sans; background: white; color: navy; -} - -button:disabled{ - color:lightgray; - border-color:lightgray; + margin: 0 0 40px 0; } fieldset { @@ -34,20 +37,235 @@ button{ border-style: solid; border-color: darkgray black black darkgray; } + footer { - position: sticky; + position: fixed; bottom: 0; width: 100%; text-align: center; + margin: 5px; + background: white; + } + +nav { + position: sticky; + z-index: 100; + top: 0; + background: #dfe4ff; padding: 5px; - margin-top: 5px; - background: white; - border-color: cyan; - border-style: dashed; - border-width: 1px 0 0; + margin: 0 0 10px 0; + border-bottom: 1px solid blue; } +.error { + background: red; + color: black; + padding: 5px; + border-radius: 6px; +} + +fieldset[tabindex="0"]{ + max-height: 55px; + overflow: hidden; +} + +fieldset[tabindex="0"]:focus-within{ + max-height: unset; +} +td, tr{ + vertical-align: baseline; +} +.customer, +.sender, +.invoice_meta{ + float: left; +} + +.clear{ + clear: both; +} .position_selector{ - background: rgba(255,255,255,0.8); + background: rgba(0,0,0,0.7); backdrop-filter: blur(3px); +} +.task.cancelled > a { + text-decoration: line-through; + color: gray; +} +.task.started > a { + color: green; +} +.task.pending > a { + color: #606060; +} +.task.complete > a { + color: green; +} +.task.complete > a:before { + content: "✓ "; +} + +.symbol { + font-family: awesome; + font-size: 20px; + font-weight: normal; +} + +.settings { + position: fixed; + background: black; + top: 60px; + left: 10px; + right: 10px; + padding: 10px; + border: 1px solid blue; + border-radius: 5px; +} + +.project:not(.list) .name, +.task .name{ + font-size: 32px; + font-weight: bold; +} + +.symbol{ + padding: 1px; +} + +li.task > button{ + display: none; +} + +li.task{ + padding: 5px 0; +} + +li.task:hover > button{ + display: initial; +} +textarea{ + color: white; + background: #333; + font-weight: black; +} + +.kanban .add_task, +.kanban .box, +.kanban .head, +.kanban .user{ + border-radius: 5px; + margin: 2px; + min-height: 50px; + color: black; + padding: 2px; +} +.kanban .box{ + background: #white; + position: relative; +} +.kanban .box .title{ + display: inline-block; + padding-bottom: 15px; +} +.kanban .add_task, +.kanban .head, +.kanban .user{ + background: white; + border: 1px solid blue; + color: blue; + text-align: center; +} +.kanban .highlight{ + background: #4b3000; +} +.kanban .estimate{ + border: 0 none; + position: absolute; + top: 0; + right: 0; + font-weight: bold; + font-size: 0.6em; +} +.kanban .due_date{ + position: absolute; + font-weight: bold; + font-size: 0.6em; + bottom: 0; + right: 0; +} + +.kanban .tags { + position: absolute; + left: 0; + bottom: 0; + font-size: 0.6em; +} +.kanban .user, +.kanban .head { + position: sticky; + top: 50px; + z-index: 20; +} + +.kanban .filter{ + position: absolute; + top: 60px; + right: 20px; +} +.kanban .state_10 .box, +.kanban .state_100 .box{ + background: #adc8d9;; +} +.kanban .state_20 .box{ + background: #e0ffdf; +} +.kanban .state_40 .box{ + background: #b2ffa8; +} +.kanban .state_60 .box{ + background: #d3ff00; +} +.project th, +.task th{ + text-align: right; + padding-right: 10px; +} + +.project th button, +.task th button{ + display: block; + margin: 5px 0 5px auto; +} + +.taglist .editor > span{ + display: inline-block; + min-width: 150px; + min-height: 1.3em; +} + +.taglist .tag{ + border: 1px solid blue; + border-radius: 5px; + padding: 5px; +} + +.taglist .tag button{ + background: transparent; + color: blue; + border: 0 none; +} + +fieldset.bookmark{ + position: relative; +} + +fieldset.bookmark legend.date{ + position: absolute; + right: 0; + top: -17px; + background: black; +} + +legend{ + max-width: 75vw; } \ No newline at end of file