@jinntec/fore
Version:
Fore - declarative user interfaces in plain HTML
270 lines (224 loc) • 5.39 kB
CSS
@import 'vars.css';
@import 'toastify.css';
/*@import url('dev.css');*/
html {
--inspector-bg: var(--paper-grey-300);
--inspector-pre-bg: var(--paper-grey-100);
--inspector-color: var(--paper-grey-800);
--inspector-instance-height: 200px;
--inspector-handle-bg: var(--paper-blue-700);
--inspector-handle-width: 30px;
}
[unresolved] {
display: none;
}
[disabled] {
pointer-events: none;
cursor: default;
}
[refresh-on-view] {
/*opacity: 0;*/
}
/*
nonrelevant must always be hidden
*/
[nonrelevant] {
display: none;
}
[relevant] {
display: block;
}
fx-control[required] label:after {
content: "*";
display: inline;
color: red;
}
.fore-error {
height: 2rem;
background: darkred;
width: 100%;
display: block ;
color: white;
}
.fore-error::before {
content: 'right-click to inspect';
display: flex;
flex-align: center;
}
fx-alert {
color: darkred;
font-size: 0.9rem;
display: none;
}
[valid] fx-alert{
display: none;
}
.visited[invalid] fx-alert {
display: block;
}
/* case not displayed by default - if you want e.g. apply transitions you have to overwrite this rule with display='inline' or similar */
fx-case {
display: none;
}
fx-case.selected-case{
display:block;
}
fx-output[readonly] img {
background: inherit;
}
.error {
background: var(--paper-red-500);
display: flex;
}
fx-control, fx-trigger, .fx-checkbox {
white-space: nowrap;
/* position: relative; */
}
/* ### FX-DIALOG STYLES ### */
/* ### FX-DIALOG STYLES ### */
/* ### FX-DIALOG STYLES ### */
fx-dialog {
display: none;
opacity: 0;
width: 100vw;
height: 100vh;
transition: opacity 1s linear;
z-index: -1;
transition: none;
}
fx-dialog.show {
display: block;
min-height: 200px;
border-radius: 0.5rem;
opacity: 1;
background: rgba(0, 0, 0, 0.5);
z-index: 10;
transition: opacity 0.4s linear;
}
fx-dialog.show .dialog-content {
padding: 1rem;
width: fit-content;
height: fit-content;
border: thin solid;
border-radius: 0.3rem;
position: absolute;
left: 50%;
top: 50%;
transform: translateX(-50%) translateY(-50%);
background: white;
}
fx-dialog a.close-dialog {
position: absolute;
right: 0.4rem;
top: 0.2rem;
color: var(--paper-grey-900);
text-decoration: none;
font-size: 1.2rem;
}
fx-dialog .action {
width: 100%;
text-align: center;
display: block;
}
fx-group, fx-switch, fx-repeat, fx-dialog {
display: block;
}
fx-hint {
display: none;
}
fx-model,
fx-instance,
fx-action,
fx-setvalue {
display: none;
}
fx-trigger a[disabled] {
color: lightgrey;
}
fx-trigger img[disabled] {
filter: blur(2px);
}
fx-repeatitem {
position: relative;
opacity: 1;
}
.hidden {
visibility: hidden;
opacity: 0;
transition: visibility 0s 2s, opacity 2s linear;
}
.isEmpty.visited .widget {
background: lightpink;
}
.loaded {
animation: fadein 0.3s forwards;
}
/* avoid flicker from nested lazily loaded elements */
.loaded .loaded {
animation: none;
opacity: 1;
}
.logtree details {
padding: 0.1rem 1rem;
margin: 0;
}
noscript{
display: block;
width: 100%;
padding: 1rem;
background: darkorange;
color:white;
position: absolute;
top:0;
left:0;
}
.submit-validation-failed .isEmpty .widget {
background: lightpink;
}
.vertical label {
display: block;
}
/* fx-action-log styles */
fx-fore.action-log{
/*background: var(--paper-orange-500);*/
}
.action-log .action-log-debug {
display: block ;
min-height: 3rem;
background: var(--paper-orange-500);
}
.action-log fx-model{
display: block;
min-height: 1rem;
}
.action-log fx-model::before{
content:'model';
}
.action-log fx-instance,
.action-log fx-bind,
.action-log fx-submission,
.action-log fx-function
{
display: block;
min-height: 2rem;
background: var(--paper-orange-500);
}
.action-log fx-bind::before{
content:'bind :: ' attr(ref);
}
.action-log fx-instance::before{
content:'instance :: ' attr(id);
}
.action-log fx-submission::before{
content:'submission ::' attr(id);
}
.action-log .action-log-debug::before{
content: attr(data-name);
}
.action-log .action-log-debug .targetd{
cursor: pointer;
}
/* ### toastify customizations #### */
.toastify.on.warning{
background: var(--paper-orange-500);
}