/* * This is a manifest file that'll be compiled into application.css, which will include all the files * listed below. * * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's * vendor/assets/stylesheets directory can be referenced here using a relative path. * * You're free to add application-wide styles to this file and they'll appear at the bottom of the * compiled file so the styles you add here take precedence over styles defined in any other CSS * files in this directory. Styles in this file should be added after the last require_* statement. * It is generally better to create a new file per style scope. * *= require_tree . *= require_self */ * { font-family: system-ui; } ::selection { background-color: #009ade; color: white; } :focus-visible { outline: none; } .centered { margin: 0 auto; } body { margin: 0 0.5rem; } /* blue - target for interaction with pointer */ /* gray - target for interaction with keyboard */ input, select { background-color: white; border: 1px solid; border-radius: 0.2rem; border-color: #cccccc; } input:not([type=checkbox]), select { font-size: 0.9rem; padding: 0.2rem 0.4rem; } input[type=checkbox] { accent-color: #009ade; appearance: none; display: flex; height: 1.1rem; margin: 0rem; width: 1.1rem; -webkit-appearance: none; } input:hover, select:hover { border-color: #009ade; outline: #009ade solid 1px; } select:hover { cursor: pointer; } input:focus-visible, select:focus-within, select:focus-visible { accent-color: #006c9b; background-color: #f3f3f3; } input[type=checkbox]:checked { appearance: checkbox; -webkit-appearance: checkbox; } input[type=text]:read-only { border: none; padding-left: 0; padding-right: 0; } input:read-only:focus-visible, input:read-only:hover { background: white; } .app-menu { height: 2.2rem; margin: 0.4rem 0; } .app-menu > * { float: right; margin-left: 0.8rem; } .nav-menu { height: 2.4rem; margin: 0.4rem 0; } .nav-menu .right > * { float: right; } .nav-menu .left > * { float: left; } .nav-menu .tab { border: none; border-radius: 0; font-size: 0.9rem; margin: 0 0.8rem; padding: 0.5rem 0.8rem; } .nav-menu .tab.active { border-bottom: solid 0.2rem; color: #009ade; fill: #009ade; } .nav-menu a.button svg, .nav-menu button svg { height: 1.5rem; padding-right: 0.4rem; width: 1.5rem; } a.button, button, input[type=submit] { align-items: center; background-color: white; border: 1px solid; border-color: #a0a0a0; border-radius: 0.2rem; color: #a0a0a0; cursor: pointer; display: flex; fill: #a0a0a0; font-size: 0.8rem; font-weight: bold; padding: 0.4rem; text-decoration: none; width: fit-content; } a.button svg, button svg { height: 1.3rem; padding-right: 0.4rem; width: 1.3rem; } a.button:hover, a.button.active:hover, button:hover, input[type=submit]:hover { background-color: #009ade; border-color: #009ade; color: white; fill: white; } a.button:focus-visible, a.button.active:focus-visible, button:focus-visible, input[type=submit]:focus-visible { background-color: #f3f3f3; } a.button:hover:focus-visible, a.button.active:hover:focus-visible, button:hover:focus-visible, input[type=submit]:hover:focus-visible { background-color: #006c9b; border-color: #006c9b; } button.dangerous:hover { background-color: #ff1f5b; border-color: #ff1f5b; } button.dangerous:hover:focus-visible { background-color: #b21237; border-color: #b21237; } .flashes { height: 2.1rem; } .flash { align-items: center; border-radius: 0.2rem; color: white; display: flex; font-size: 1.0rem; } .flash.alert:before { content: url('pictograms/alert-outline.svg'); height: 1.4rem; margin: 0 0.5rem; width: 1.4rem; } .flash.alert { border-color: #ff1f5b; background-color: #ff1f5b; } .flash.notice:before { content: url('pictograms/check-circle-outline.svg'); height: 1.4rem; margin: 0 0.5rem; width: 1.4rem; } .flash.notice { border-color: #009ade; background-color: #009ade; } .flash button { background-color: inherit; border: inherit; border-radius: inherit; color: inherit; cursor: pointer; font-size: 1.4rem; font-weight: bold; margin-left:auto; opacity: 0.6; padding: 0.2rem 0.2rem; } .flash button:hover { opacity: 1; } form table { border-spacing: 0.8rem; } form tr td:first-child { color: #a0a0a0; font-size: 0.9rem; padding-right: 0.25rem; text-align: right; } form label.required { font-weight: bold; } form label.error, form td.error::after { color: #ff1f5b; } form td.error { display: -webkit-box; } form td.error::after { content: attr(data-content); font-size: 0.9rem; margin-left: 1rem; padding: 0.25rem 0; position: absolute; } form em { color: #707070; font-size: 0.75rem; font-weight: normal; } form input[type=submit] { float: none; font-size: 1rem; margin: 1.5rem auto 0 auto; padding: 0.75rem; } table.items { border-spacing: 0; border: 1px solid #dddddd; border-radius: 0.2rem; font-size: 0.85rem; margin: 1rem auto 0 auto; } table.items thead { font-size: 0.8rem; line-height: 2.2rem; } table.items thead, table.items tbody tr:hover { background-color: #f3f3f3; } table.items th, table.items td:not(:first-child):not(.actions) { padding: 0 0.8rem; text-align: center; } table.items td { border-top: 1px solid #dddddd; padding: 0; } table.items a { color: black; cursor: pointer; display: block; font-weight: normal; line-height: 2.5rem; padding: 0 0.8rem; text-decoration: none; } table.items a:hover, table.items a:focus-visible, table.items a:hover:focus-visible { text-decoration: underline; text-decoration-thickness: 0.05rem; text-underline-offset: 0.2rem; } table.items a:hover { color: #009ade; } table.items a:focus-visible { text-decoration-color: #a0a0a0; } table.items a:hover:focus-visible { color: #006c9b; } table.items td:not(:first-child) { color: #909090; fill: #909090; } table.items svg { height: 1.2rem; vertical-align: middle; width: 1.2rem; } table.items td.actions { padding-left: 0.8rem; text-align: right; } table.items button { margin-right: 0.25rem; padding: 0.25rem; } table.items select:not(:hover), table.items button:not(:hover) { border-color: #dddddd; color: #909090; } table.items select:focus-within, table.items select:focus-visible { color: black; }