2017-03-31 02:34:39 +00:00
|
|
|
/*
|
|
|
|
Organization:
|
|
|
|
{
|
2017-12-16 22:13:02 +00:00
|
|
|
display and flexing
|
|
|
|
positioning and alignment
|
2017-03-31 02:34:39 +00:00
|
|
|
bounding box (width, margin, overflow, ...)
|
|
|
|
borders and shadows
|
|
|
|
backgrounds
|
|
|
|
foregrounds
|
|
|
|
misc
|
|
|
|
}
|
|
|
|
*/
|
2017-12-16 22:13:02 +00:00
|
|
|
:root
|
|
|
|
{
|
|
|
|
--color_site_theme: #00d8f4;
|
|
|
|
--color_3d_shadow: rgba(0, 0, 0, 0.5);
|
|
|
|
--color_3d_highlight: rgba(255, 255, 255, 0.5);
|
|
|
|
}
|
2016-09-18 08:33:46 +00:00
|
|
|
body
|
|
|
|
{
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
margin: 8px;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2017-12-16 22:13:02 +00:00
|
|
|
background-color: var(--color_site_theme);
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
|
|
|
li
|
|
|
|
{
|
|
|
|
position:relative;
|
|
|
|
}
|
|
|
|
#header
|
|
|
|
{
|
2017-08-02 01:37:25 +00:00
|
|
|
display: grid;
|
|
|
|
grid-template-columns: 1fr 1fr 1fr 1fr auto;
|
|
|
|
grid-template-rows: auto;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
margin-bottom: 4px;
|
|
|
|
}
|
|
|
|
.header_element
|
|
|
|
{
|
|
|
|
display: flex;
|
|
|
|
flex: 1;
|
2017-03-31 02:34:39 +00:00
|
|
|
justify-content: center;
|
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
background-color: rgba(0, 0, 0, 0.1);
|
|
|
|
}
|
|
|
|
.header_element:hover
|
|
|
|
{
|
|
|
|
background-color: #ffffd4;
|
|
|
|
}
|
2017-08-02 01:37:25 +00:00
|
|
|
.editor_input
|
|
|
|
{
|
|
|
|
width: 100%;
|
|
|
|
max-width: 800px;
|
|
|
|
}
|
2017-06-15 04:44:18 +00:00
|
|
|
.hidden
|
|
|
|
{
|
|
|
|
display: none !important;
|
|
|
|
}
|
2016-09-18 08:33:46 +00:00
|
|
|
#content_body
|
|
|
|
{
|
|
|
|
display: flex;
|
2017-03-31 02:34:39 +00:00
|
|
|
flex: 0 0 auto;
|
2016-09-18 08:33:46 +00:00
|
|
|
flex-direction: row;
|
|
|
|
}
|
2017-12-16 22:13:02 +00:00
|
|
|
|
2017-04-23 04:21:44 +00:00
|
|
|
.green_button
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
|
|
|
background-color: #6df16f;
|
|
|
|
}
|
2017-04-23 04:21:44 +00:00
|
|
|
.red_button
|
|
|
|
{
|
|
|
|
background-color: #ff4949;
|
|
|
|
}
|
2017-12-16 22:13:02 +00:00
|
|
|
.yellow_button
|
2017-04-23 04:21:44 +00:00
|
|
|
{
|
2017-12-16 22:13:02 +00:00
|
|
|
background-color: #ffea57;
|
|
|
|
}
|
|
|
|
|
|
|
|
.green_button,
|
|
|
|
.red_button,
|
|
|
|
.yellow_button
|
|
|
|
{
|
|
|
|
border-top: 2px solid var(--color_3d_highlight);
|
|
|
|
border-left: 2px solid var(--color_3d_highlight);
|
|
|
|
border-right: 2px solid var(--color_3d_shadow);
|
|
|
|
border-bottom: 2px solid var(--color_3d_shadow);
|
|
|
|
}
|
|
|
|
.green_button:active,
|
|
|
|
.red_button:active,
|
|
|
|
.yellow_button:active
|
|
|
|
{
|
|
|
|
border-top: 2px solid var(--color_3d_shadow);
|
|
|
|
border-left: 2px solid var(--color_3d_shadow);
|
|
|
|
border-right: 2px solid var(--color_3d_highlight);
|
|
|
|
border-bottom: 2px solid var(--color_3d_highlight);
|
2017-04-23 04:21:44 +00:00
|
|
|
}
|
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
.remove_tag_button,
|
|
|
|
.remove_tag_button_perm
|
|
|
|
{
|
2017-03-04 06:30:57 +00:00
|
|
|
/*position: absolute;*/
|
2016-09-18 08:33:46 +00:00
|
|
|
top: 3px;
|
2017-03-31 02:34:39 +00:00
|
|
|
vertical-align: middle;
|
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
width: 18px;
|
|
|
|
height: 14px;
|
|
|
|
padding: 0;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
2017-04-23 04:21:44 +00:00
|
|
|
/*
|
|
|
|
The Remove button will be display:none by default, but is shown when the tag
|
|
|
|
is hovered over.
|
|
|
|
*/
|
2016-09-18 08:33:46 +00:00
|
|
|
.remove_tag_button
|
|
|
|
{
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
.tag_object:hover + .remove_tag_button,
|
|
|
|
.remove_tag_button:hover,
|
|
|
|
.remove_tag_button_perm:hover
|
|
|
|
{
|
|
|
|
display:inline;
|
|
|
|
}
|
2017-04-23 04:21:44 +00:00
|
|
|
|
2017-12-10 01:48:56 +00:00
|
|
|
.photo_card
|
|
|
|
{
|
|
|
|
background-color: #ffffd4;
|
|
|
|
}
|
2016-11-07 02:00:30 +00:00
|
|
|
.photo_card_list
|
|
|
|
{
|
2017-08-02 01:25:28 +00:00
|
|
|
display: grid;
|
2017-12-10 01:48:56 +00:00
|
|
|
grid-template-columns: auto 1fr auto;
|
2017-08-02 01:25:28 +00:00
|
|
|
grid-template-rows: auto;
|
|
|
|
grid-template-areas:
|
2017-12-10 01:48:56 +00:00
|
|
|
"checkbox filename metadata";
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2017-08-02 01:25:28 +00:00
|
|
|
max-width: 800px;
|
2017-03-31 02:34:39 +00:00
|
|
|
margin: 8px;
|
|
|
|
padding: 4px;
|
2016-11-07 02:00:30 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_list:hover
|
|
|
|
{
|
|
|
|
box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.25);
|
|
|
|
}
|
2017-12-10 01:48:56 +00:00
|
|
|
.photo_card_list .photo_card_selector_checkbox
|
|
|
|
{
|
|
|
|
grid-area: checkbox;
|
|
|
|
}
|
2016-11-07 02:00:30 +00:00
|
|
|
.photo_card_grid
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
2017-12-10 01:48:56 +00:00
|
|
|
position: relative;
|
2017-08-02 01:25:28 +00:00
|
|
|
display: inline-grid;
|
|
|
|
grid-template-columns: auto auto;
|
|
|
|
grid-template-rows: auto 1fr auto;
|
|
|
|
grid-template-areas:
|
|
|
|
"thumbnail thumbnail"
|
|
|
|
"filename filename"
|
|
|
|
"tags metadata";
|
2016-09-18 08:33:46 +00:00
|
|
|
min-width: 150px;
|
|
|
|
max-width: 300px;
|
|
|
|
height: 200px;
|
|
|
|
padding: 8px;
|
|
|
|
margin: 8px;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
border-radius: 8px;
|
2017-03-31 02:34:39 +00:00
|
|
|
box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.25);
|
2017-12-10 01:48:56 +00:00
|
|
|
}
|
|
|
|
.photo_card_grid .photo_card_selector_checkbox
|
|
|
|
{
|
|
|
|
position:absolute;
|
|
|
|
left:5px;
|
|
|
|
top:5px;
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_thumbnail
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
2017-08-02 01:25:28 +00:00
|
|
|
grid-area: thumbnail;
|
|
|
|
align-self: start;
|
|
|
|
justify-self: center;
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_thumbnail img
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
|
|
|
max-width: 100%;
|
2017-03-31 02:03:33 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_filename
|
2017-03-31 02:03:33 +00:00
|
|
|
{
|
2017-02-28 07:05:43 +00:00
|
|
|
/*
|
|
|
|
The width of photo cards should be based on the aspect ratio of the
|
|
|
|
thumbnail image. Previously, I had problems where the card would be wider
|
|
|
|
than necessary because the file had a long name.
|
2017-08-02 01:25:28 +00:00
|
|
|
The min-width:100% + width:0 prevent the info div from controlling
|
2017-03-31 02:34:39 +00:00
|
|
|
card size, so we can prioritize the thumbnail instead.
|
2017-02-28 07:05:43 +00:00
|
|
|
*/
|
2017-08-02 01:25:28 +00:00
|
|
|
justify-self: start;
|
|
|
|
grid-area: filename;
|
|
|
|
|
2017-03-31 02:34:39 +00:00
|
|
|
z-index: 1;
|
2017-08-02 01:25:28 +00:00
|
|
|
overflow: hidden;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2017-08-02 01:25:28 +00:00
|
|
|
min-width: 100%;
|
|
|
|
width: 0;
|
2017-03-31 02:34:39 +00:00
|
|
|
max-height: 30px;
|
|
|
|
background-color: inherit;
|
2017-08-02 01:25:28 +00:00
|
|
|
word-break: break-word;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2017-08-02 01:25:28 +00:00
|
|
|
font-size: 12.8px;
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
2017-12-10 01:48:56 +00:00
|
|
|
.photo_card_grid .photo_card_filename
|
|
|
|
{
|
|
|
|
align-self: start;
|
|
|
|
}
|
|
|
|
.photo_card_list .photo_card_filename
|
|
|
|
{
|
|
|
|
align-self: center;
|
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_filename:hover
|
2017-02-05 02:30:02 +00:00
|
|
|
{
|
2017-02-25 06:07:59 +00:00
|
|
|
overflow: visible;
|
2017-08-02 01:25:28 +00:00
|
|
|
max-height: none;
|
2017-02-05 02:30:02 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_tags
|
2017-02-28 07:05:43 +00:00
|
|
|
{
|
2017-08-02 01:25:28 +00:00
|
|
|
grid-area: tags;
|
|
|
|
align-self: end;
|
|
|
|
justify-self: start;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
|
|
|
font-family: monospace;
|
|
|
|
font-size: 11px;
|
2017-02-28 07:05:43 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
.photo_card_metadata
|
2016-10-10 03:50:13 +00:00
|
|
|
{
|
2017-08-02 01:25:28 +00:00
|
|
|
grid-area: metadata;
|
|
|
|
align-self: end;
|
|
|
|
justify-self: end;
|
|
|
|
|
|
|
|
font-family: monospace;
|
|
|
|
font-size: 11px;
|
2016-10-10 03:50:13 +00:00
|
|
|
}
|
2017-08-02 01:25:28 +00:00
|
|
|
|
2016-09-18 08:33:46 +00:00
|
|
|
.tag_object
|
|
|
|
{
|
|
|
|
border-radius: 2px;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
|
|
|
font-size: 0.9em;
|
2016-09-18 08:33:46 +00:00
|
|
|
text-decoration: none;
|
|
|
|
font-family: monospace;
|
|
|
|
line-height: 1.3;
|
|
|
|
}
|
2016-12-21 09:11:50 +00:00
|
|
|
#message_area
|
|
|
|
{
|
|
|
|
display: flex;
|
2017-03-31 02:34:39 +00:00
|
|
|
flex: 2;
|
2016-12-21 09:11:50 +00:00
|
|
|
flex-direction: column;
|
|
|
|
align-items: center;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
|
|
|
max-height: 300px;
|
|
|
|
width: 100%;
|
|
|
|
height: 100%;
|
|
|
|
overflow-y: auto;
|
|
|
|
|
|
|
|
background-color: rgba(0, 0, 0, 0.1);
|
2016-12-21 09:11:50 +00:00
|
|
|
}
|
2017-03-04 06:30:57 +00:00
|
|
|
.message_bubble
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
|
|
|
width: 80%;
|
|
|
|
margin: 4px;
|
2017-03-31 02:34:39 +00:00
|
|
|
|
2017-03-04 06:30:57 +00:00
|
|
|
word-wrap: break-word;
|
2016-09-18 08:33:46 +00:00
|
|
|
}
|
2016-12-21 09:11:50 +00:00
|
|
|
.message_positive
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
|
|
|
background-color: #afa;
|
|
|
|
}
|
2016-12-21 09:11:50 +00:00
|
|
|
.message_negative
|
2016-09-18 08:33:46 +00:00
|
|
|
{
|
|
|
|
background-color: #faa;
|
2016-11-07 02:00:30 +00:00
|
|
|
}
|
2017-12-16 11:47:54 +00:00
|
|
|
|
|
|
|
#clipboard_tray
|
|
|
|
{
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
position: fixed;
|
|
|
|
right: 8px;
|
|
|
|
bottom: 8px;
|
|
|
|
z-index: 10;
|
|
|
|
|
|
|
|
max-height: 80%;
|
|
|
|
min-width: 150px;
|
|
|
|
padding: 2px;
|
|
|
|
|
|
|
|
background-color: #ffffd4;
|
|
|
|
}
|
|
|
|
#clipboard_tray_expandbutton
|
|
|
|
{
|
|
|
|
flex: 1 0 auto;
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
#clipboard_tray_body
|
|
|
|
{
|
|
|
|
width: 300px;
|
|
|
|
overflow-y: auto;
|
|
|
|
}
|