abtmtr-v4/views/styles/windows.css
2024-01-23 16:10:54 -06:00

242 lines
6.3 KiB
CSS
Executable file

@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0");
.window-master {
display: inline-block;
position: fixed;
left: 0;
top: 0;
width: 0;
height: 0;
overflow: visible;
}
div.window-object {
display: grid;
grid-template-rows: max-content auto;
grid-gap: 0.25em;
position: fixed;
width: 600px;
height: 500px;
left: calc(50vw - 300px);
top: calc(50vh - 250px);
bottom: auto;
min-width: 10em;
min-height: 2em;
background-color: var(--accent-color);
color: var(--accent-color-fg);
--border-color: var(--color);
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
resize: both;
overflow: hidden;
padding: 0.25em;
scale: 1;
opacity: 1;
animation-name: appear;
animation-duration: 0.25s;
}
html.base div.window-object {
--background-color: transparent !important;
--color: #000 !important;
--accent-color: #c0c0c0 !important;
--accent-color-bg: #000 !important;
--accent-color-fg: #000 !important;
background-color: var(--accent-color);
color: var(--accent-color-fg);
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
}
@media (forced-colors: active) {
div.window-object {
--background-color: transparent !important;
--color: #000 !important;
--accent-color: #c0c0c0 !important;
--accent-color-bg: #000 !important;
--accent-color-fg: #000 !important;
background-color: var(--accent-color);
color: var(--accent-color-fg);
border: var(--border-width) var(--border-style) var(--border-color);
}
}
div.window-object {
/* The underlay color of the document. */
--underlay-color: hsl(var(--base-color), 10%);
/* The page color. */
--background-color: hsl(var(--base-color), 15%);
/* The foreground color of the page. */
--color: hsl(var(--base-color), 85%);
/* The accent color of the page. */
--accent-color: hsl(var(--base-color), 40%);
/* The background-adjacent accent color of the page. */
--accent-color-bg: hsl(var(--base-color), 50%);
/* The foreground accent color of the page. */
--accent-color-fg: hsl(var(--base-color), 95%);
}
@media (prefers-color-scheme: light) {
div.window-object {
/* The underlay color of the document. */
--underlay-color: hsl(var(--base-color), 90%);
/* The page color. */
--background-color: hsl(var(--base-color), 80%);
/* The foreground color of the page. */
--color: hsl(var(--base-color), 15%);
/* The accent color of the page. */
--accent-color: hsl(var(--base-color), 60%);
/* The background-adjacent accent color of the page. */
--accent-color-bg: hsl(var(--base-color), 30%);
/* The foreground accent color of the page. */
--accent-color-fg: hsl(var(--base-color), 5%);
/* The color of the borders used on certain elements. */
--border-color: var(--color);
}
}
@media (prefers-color-scheme: dark) {
html.base div.window-object {
--background-color: transparent !important;
--color: #fff !important;
--accent-color: #404040 !important;
--accent-color-bg: #fff !important;
--accent-color-fg: #fff !important;
background-color: var(--accent-color);
color: var(--accent-color-fg);
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
}
}
@media (prefers-color-scheme: dark) and (forced-colors: active) {
div.window-object {
--background-color: transparent !important;
--color: #fff !important;
--accent-color: #404040 !important;
--accent-color-bg: #fff !important;
--accent-color-fg: #fff !important;
background-color: var(--accent-color);
color: var(--accent-color-fg);
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
}
}
div.window-object.unfocused {
opacity: 0.5;
}
div.window-object.petrified {
resize: none;
}
div.window-object.maximized {
top: 0 !important;
left: 0 !important;
max-width: 100vw !important;
width: 100vw !important;
min-width: 100vw !important;
max-height: 100vh !important;
height: 100vh !important;
min-height: 100vh !important;
resize: none;
}
div.window-object.maximized > div.window-manager {
cursor: default !important;
}
div.window-object.minimized {
top: auto !important;
left: 0 !important;
max-width: 20em !important;
width: 20em !important;
min-width: 20em !important;
max-height: calc(2em + (1em / 16)) !important;
height: calc(2em + (1em / 16)) !important;
min-height: calc(2em + (1em / 16)) !important;
resize: none;
z-index: var(--z-index) !important;
}
div.window-object.minimized > div.window-manager {
cursor: default !important;
}
div.window-object.minimized > iframe.window-content {
display: none;
}
div.window-object > div.window-manager {
display: grid;
width: 100%;
grid-template-columns: auto max-content;
vertical-align: middle;
height: 1.5em;
/* overflow: hidden; */
user-select: none;
}
div.window-object > div.window-manager > div {
width: 100%;
vertical-align: middle;
height: 100%;
box-sizing: content-box;
}
div.window-object > div.window-manager > div.window-manager-start {
text-align: start;
overflow: hidden;
}
div.window-object
> div.window-manager
> div.window-manager-start
> span.window-manager-label {
display: inline-block;
height: 100%;
width: 100%;
line-height: 1.5em;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
div.window-object > div.window-manager > div.window-manager-end {
text-align: end;
}
div.window-object > div.window-manager > div > button {
height: 1.5em;
width: 1.5em;
padding: 0;
margin: 0;
margin-inline-start: 0.25em;
box-sizing: border-box;
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
background-color: transparent;
color: currentColor;
font-family: "Material Symbols Outlined";
text-align: center;
vertical-align: middle;
font-size: 1em;
line-height: 0.5em;
}
div.window-object > iframe.window-content {
background-color: var(--background-color);
height: 100%;
width: 100%;
border: var(--border-width) var(--border-style) var(--border-color);
border-radius: var(--border-radius);
min-height: 0;
min-width: 0;
}