Files
luk/drive_view_tui.tcss
2025-05-16 17:17:37 -06:00

217 lines
3.0 KiB
Plaintext

/* OneDrive TUI App CSS Styles */
/* Main container */
#main_container {
}
/* Authentication container */
#auth_container {
display: block;
align: center middle;
height: 1fr;
margin: 1 2;
padding: 1;
border: heavy $accent;
background: $surface;
&.hide {
display:none;
}
}
#auth_message {
margin-bottom: 1;
width: 100%;
height: auto;
padding: 1;
text-align: center;
}
#login_button {
align: center middle;
margin: 1;
min-width: 20;
}
/* Content container that holds drives and items */
#content_container {
margin-top: 1;
height: 1fr;
}
/* Status and loading elements */
#top_bar {
height: 4;
#status_label {
text-align: center;
color: $accent;
padding:1;
width: 2fr
}
#view_options {
border: round $secondary;
width: 1fr;
min-width: 40;
}
}
#loading_container {
height: 3;
width: 100%;
align: center middle;
margin: 2 0;
}
/* Title styles */
.title {
color: $accent;
background: $boost;
text-align: center;
padding: 1;
text-style: bold;
border: heavy $accent;
margin-bottom: 1;
}
/* Drive container styles */
#drive_container {
width: 1fr;
height: 100%;
}
#drive_list {
border: round $primary;
padding: 0 1;
height: 100%;
}
#drive_label {
color: $text;
text-style: bold;
}
/* Items container and table styles */
#items_container {
padding: 0;
width: 4fr;
height: 100%;
}
#items_table {
width: 100%;
height: auto;
}
/* File icon styling in the data table */
.datatable--cell:first-child {
color: $accent;
text-align: center;
padding-right: 1;
min-width: 3;
}
/* Custom icon colors by file type */
.folder-icon {
color: $warning; /* Folders are yellow/orange */
}
.document-icon {
color: $primary; /* Documents are blue */
}
.image-icon {
color: $success; /* Images are green */
}
.code-icon {
color: $accent-lighten-2; /* Code files are lighter accent color */
}
.archive-icon {
color: $error; /* Archives are red */
}
#no_items_label {
color: $text-muted;
text-align: center;
padding: 2;
}
/* Document Viewer Screen Styles */
#document_viewer {
padding: 0 1;
height: 100%;
width: 100%;
}
#top_container {
height: 3;
width: 100%;
background: $boost;
}
#document_title {
color: $accent;
text-align: left;
text-style: bold;
margin-bottom: 0;
width: 1fr;
height: 1;
}
#plaintext_content {
padding: 1;
width: 100%;
}
#image_content {
padding: 2;
height: auto;
width: 100%;
}
#button_container {
width: auto;
height: 3;
align: right middle;
margin-right: 1;
}
#button_container Button {
min-width: 16;
}
/* Utility classes */
.hide, .hidden {
display: none;
}
/* DataTable styling */
DataTable {
border: solid $accent;
background: $primary-background-lighten-1;
}
DataTable > .datatable--header {
background: $primary;
color: $text;
text-style: bold;
}
DataTable > .datatable--cursor {
background: $secondary;
}