Files
chrani-bot-tng/bot/modules/webserver/static/lcars/200-framework.css
2025-11-21 07:26:02 +01:00

128 lines
2.9 KiB
CSS

@import url("210-scrollbar_hacks.css");
@import url("220-screen_adjustments.css");
html {
background: var(--background);
}
a, a:visited {
color: var(--background);
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
body {
margin: 0 auto;
font-family: "SWISS 911 Extra Compressed BT", sans-serif;
display: flex;
flex-direction: column;
}
body > header, body > footer {
flex: 0 0 auto;
}
body > main {
flex: 1 1 auto;
}
/* header and footer are special due to their graphical shoulders */
body > header > div, body > header > div:before,
body > footer > div, body > footer > div:before {
height: var(--main_shoulder_height);
}
body > header {
margin-bottom: var(--main_table_gutter);
}
body > footer {
margin-top: var(--main_table_gutter);
}
body > header > div {
position: relative;
display: flex;
align-items: flex-end;
margin:
0 var(--main_bar_terminator_width)
0 var(--main_shoulder_width);
overflow: hidden;
}
body > header,
body > footer {
border-top-left-radius: calc(
var(--main_bar_height) * 2.66)
calc(var(--main_bar_height) * 1.33
);
background:
url(ui/main_shoulder.png) no-repeat top left,
url(ui/main_horizontal_bar_end.png) no-repeat top right;
}
body > footer,
body > footer > div,
body > footer > div:before {
transform: scaleY(-1);
}
body > header > div:before,
body > footer > div:before {
width: 100%;
content: "";
background:
url(ui/main_horizontal_bar.png)
repeat-x;
}
body > footer > div {
display: flex;
align-items: flex-end;
margin:
0 var(--main_bar_terminator_width)
0 var(--main_shoulder_width);
overflow: hidden;
}
/* every element inside main > div is a widget! */
body > main > div {
color: var(--lcars-atomic-tangerine);
display: flex;
flex-wrap: wrap;
height: var(--main_area_height);
overflow-y: scroll; /* this has to stay for scroll-snapping to work */
overflow-x: hidden;
scroll-snap-type: y mandatory;
}
body > main > div > .widget {
display: flex;
flex-wrap: wrap;
flex: 0 0 auto;
height: var(--main_widget_height);
scroll-snap-align: start;
border-bottom: var(--main_table_gutter) solid var(--background);
border-right: calc(var(--main_table_gutter) * 2) solid var(--background);
}
body > main > div .single_screen {
width: 100%;
height: var(--main_area_height);
padding-left: calc(var(--main_widget_shoulder_width));
background: linear-gradient(
to right,
var(--main-bar-color) 0,
var(--main-bar-color) calc(var(--main_widget_shoulder_width) - var(--main_shoulder_gap)),
var(--background) calc(var(--main_widget_shoulder_width) - var(--main_shoulder_gap)),
var(--background) 100%
);
}
body > main > div .single_screen a:hover {
text-decoration: underline;
}