html, body, input, select, textarea, button
{ 
    margin: 0; 
    padding: 0; 
    font-family: LocalFont;
    font-size: var(--font-std);
    color: var(--main-fg-color);
    background-color: var(--main-bg-color);
}
header 
{
    position: fixed;
    z-index: 10;
    top: 0;
    width: 100%;
}
input, textarea, select
{
    margin-left: 10px;
    color: var(--input-fg-color);
    background-color: var(--input-bg-color);
    padding: 2px;
    border-color: var(--input-fg-color);
}
input[type="text"]:disabled, input[type="password"]:disabled, input[type="select"]:disabled
{
    background: var(--disabled-bg-color);
}
input[type=checkbox] 
{
    accent-color: var(--main-fg-color);
}
a
{
    text-decoration: none;
    color: var(--link-color);
}
table 
{
    width: 100%;
    table-layout: fixed;
    text-align: left;
}
td 
{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: var(--font-std);
}
td a:hover
{
    text-decoration: underline;
}
select 
{
  width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
td 
{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: var(--font-std);
}
td a:hover
{
    text-decoration: underline;
}
h1, h2
{
    display: block;
    font-family: LocalFont;
    font-size: var(--font-large);
    margin: 0px;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}
h2 
{
    font-size: var(--font-std);
}

/* slideshow */
.smart-carousel-item-label
{
    font-size: var(--font-carousel);
    color: var(--carousel-fg-color);
    background-color: rgba(0,0,0,0.8);
    width: 100%;
}
.smart-carousel-item-content
{
    font-size: var(--font-carousel);
    color: var(--carousel-fg-color);
    background-color: rgba(0,0,0,0.2);
    width: 100%;
}
.slideshow
{
    position: relative;
    top: 0px;
    width: 100%;
    min-height: 1200px;
    display: none;
}
.slideimage
{
    width: 100%;
    height: auto;
    object-fit: cover;
    min-height: 1200px;
}
.slideSwiper 
{
    width: 100%;
    height: 100vh;
}
.swiper-slide img 
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.35;
    transition: opacity 0.5s ease;
    ___animation: zoomin 10s ease-in-out infinite;
}
@keyframes zoomin 
{
    0%   { transform: scale(1); }
    100% { transform: scale(1.15); }
}

/* tabs */
.smart-tabs
{
    width: 100%;
    font-family: 'LocalFont'        !important;
    font-size: var(--font-std)      !important;
    height: 50px;
    min-height: auto;
}

/* tree */
.smart-tree
{
    width: 100%;
    height: 100%;
}
smart-tree-items-group 
{
    font-family: 'LocalFont'        !important;
    font-size: var(--font-std)      !important;
}
smart-tree-item
{
    font-family: 'LocalFont'        !important;
    font-size: var(--font-small)    !important;
}
.treenode
{
    color: var(--main-fg-color);
}

/* card */
.smart-card
{
    background-color: var(--card-title-bg-color);
    box-shadow: 7px 7px 5px var(--shadow-color); 
    outline: 1px solid;
    height: var(--card-full-height);
}
.card_image, .card_image_full
{
    height: var(--card-height-no-title);
    width: 100%;
    background-position: center; 
    background-repeat: no-repeat;  
    background-size: 100% 100%; 
    background-size: cover;
}
.card_image_full
{
    height: var(--card-full-height);
}
.card_title_container
{
    background-color: var(--card-title-bg-color);
    padding: 10px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.card_title
{
    color: var(--card-title-fg-color);
    font-family: 'LocalFont';
    font-size: var(--font-card-title) !important;
}

/* menu */
#menu_outer_div
{
    width: 100%; 
    text-align: center;
    display: none;
}
#menu_width
{
    max-width: 100%;
    display: block;
}
.menu
{
    --smart-menu-default-width: 100%;
    --smart-font-size: var(--menu-font);
    --smart-item-border-width: 0px;
    border: 0px;
    height: 120px;
    left: 0px;
}
.smart-menu
{
    direction: rtl;
    background-color: var(--main-bg-color)  !important;
}
.smart-menu-main-container
{
    background-color: var(--menu-container-bg-color);
    color: var(--menu-fg-color);
    top: 5px;
    height: 50px !important;
}
.smart-menu-item-label-element
{
    font-family: 'LocalFont';
    font-weight: 300 !important;
    font-size: var(--menu-font) !important;
    z-index: 10;
}
.smart-menu-item[hover]
{
    border-top: 1px solid var(--menu-bg-color-hover);
    border-right: 1px solid var(--menu-bg-color-hover);
    border-bottom: 1px solid var(--menu-bg-color-hover);
    border-left: 1px solid var(--menu-bg-color-hover);
}
#menu_space
{
    width: 5px;
    display: block;
}
#menu_small
{
    color: var(--label-fg-color);
    font-size: var(--font-small);
}

/* menu mobile */
#menu_mobile
{ }
#menu_mobile_header
{
    display: block;
    width: 100%;
    height: 50px;
    clear: both;
    background-color: var(--menu-mobile-bg-color);
}
#menu_mobile_logo
{
    position: fixed;
    display: block;
    height: 50px;
    top: 0px;
    overflow: hidden;
    width: 100%;
    text-align: right;
}
#menu_mobile_image
{
    position: relative;
    left: 10px;
    top: 12px;
}
#menu_mobile_title
{
    position: relative;
    left: 10px;
    top: 13px;
    color: var(--menu-mobile-title-fg-color);
    display: inline-block;
    font-size: var(--font-small);
}
#menu_mobile_content
{
    display: none;
    position: fixed;
    top: 70px;
    width: 100%;
    height: 100%;
    color: var(--menu-mobile-fg-color);
    background-color: var(--menu-mobile-content-bg-color);
    overflow-y: auto;
}
#logo_mobile_container
{
    display: block;
    top: 0px;
    left: 0px;
    height: 80px;
    width: 100%;
    background-color: var(--menu-mobile-bg-color);
}
#logo_mobile_image
{
    top: 0px;
    margin-left: 20px;
    height: 70px;
    max-width: 90%;
}
#menu_mobile_voice a
{
    font-size: var(--font-large);
    padding: 5px;
    color: var(--menu-mobile-fg-color);
    display: block;
}
#menu_mobile_voice a:hover
{
    color: var(--menu-fg-color-hover);
    background-color: var(--menu-bg-color-hover);
}

/* image/video */
#outer_video_container, #outer_image_container
{
    display: none;
    height: 100%; 
    width: 100%;
    position: fixed;
    left: 0px; 
    bottom: 0px; 
    z-index: 1000;
    text-align: center;
    background-color: var(--button-bg-color);
}
#single_image_container
{
	position: absolute;
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	display: block;
	background-color: var(--button-bg-color);
}
#ok_image
{
    background-color: var(--button-bg-color);
    color: var(--button-fg-color);
    position: absolute;
    left: 10px;
    top: 3px;
    padding: 0px 0px;
    z-index: 1001;
}
#ok_image a
{
    color: var(--button-fg-color);
}
#video_title_line, #image_title_line
{
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    background-color: var(--button-bg-color);
    color: var(--button-fg-color);
    z-index: 1000;
    height: 32px;
}
#image_console_container
{
    width: 30px;
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 15px;
    text-align: left;
    z-index: 100;
}
#image_console_container img
{
	min-width: 32px;
}
#image_container
{
    width: 100%;
    height: 0px;
    display: inline-block;
    position: relative;
    float: left;
    overflow: hidden;
}
#image_outer_container
{
	height: 100%;
	display: block;
	text-align: center;
}
#whole_image_inner_container
{
    height: 100%;
    width: 100%;
    display: inline-block;
    margin-top: 0px;
    position: relative;
    margin-left: 0px;
    margin-right: 0px;
}
#image_zoom
{
	height: 100%;
	display: inline-block;
	position: relative;
}
.image_overlay 
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}
#gallery_menu
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    background-color: #000000;
}
.arrow, .image_close 
{
    position: absolute;
    top: 10px;
    font-size: 24px;
    color: white;
    cursor: pointer;
    user-select: none;
}
.arrow.left 
{
    right: 100px;
}
.arrow.right 
{
    right: 60px;
}
.image_close
{
    right: 20px;
}
.image_overlay 
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}
.image_fullscreen 
{
    max-width: 90vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    box-shadow: 0 0 20px rgba(255,255,255,0.3);
}


/* cookies */
#cookies
{
    display: none;
    height: 100%; 
    width: 100%;
    position: fixed;
    left: 0px; 
    bottom: 0px; 
    z-index: 1000;
    text-align: center;
    background-color:rgba(0,0,0,0.2);
}
#inner_cookies
{
    display: none;
    position: fixed;
    width: 100%;
    margin: auto;
    text-align: center;
    border-style: solid;
    border-width: 2px;
    border-color: var(--cookies-bg-color);
    background-color: var(--cookies-bg-color);
    bottom: 0px;
    color: var(--cookies-fg-color);
}
#inner_cookies a
{
    color: var(--cookies-inner-fg-color);
}
#close_cookies
{
    text-align: right;
    margin-top: 20px;
    margin-right: 20px;
}
#ok_cookies
{
    background-color: var(--cookies-ok-bg-color);
    color: var(--cookies-ok-fg-color);
    font-size: var(--font-std); 
    padding: 4px 15px;
    width: 200px;
    text-align: center;
    margin: 5px auto;
    border-style: solid;
    border-width: 0px;
}
#ok_cookies a
{
    color: var(--cookies-ok-fg-color);
}

/* swal2 */
.swal2-styled.swal2-confirm
{
    background-color: var(--message-title-bg-color);
    color: var(--message-title-fg-color);
}
.swal2-title
{
    background-color: var(--message-title-bg-color);
    color: var(--message-title-fg-color);
    padding: 10px 10px 10px;
}
.swal2-html-container
{
    background-color: var(--message-bg-color);
    color: var(--message-fg-color);
}

/* upload */
.qq-upload-button
{
    background-color: var(--upload-bg-color);
    font-size: var(--font-small);
    width: 300px;
}
#fine-uploader
{
    height: 100px;
    overflow: hidden;
}
#fine-uploader .qq-uploader
{
    height: 100px   !important;
    max-height: 100px   !important;
    overflow-y: hidden;
    border: none !important;
    padding: 0px;
}
#fine-uploader .qq-upload-drop-area 
{ 
    border: none !important; 
}
#fine-uploader .qq-upload-drop-area:focus 
{ 
    outline: none !important; 
}

/* alternate error */
.error-overlay 
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}
.error-modal 
{
    background: white;
    padding: 20px;
    width: 320px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
    text-align: center;
}
.error-modal h2 
{
    margin: 0px;
    color: var(--group-fg-color);
    background-color: var(--group-bg-color);
    font-size: var(--font-large);
    width: 100%;
    text-transform: uppercase;
}
.error-modal p 
{
    font-size: var(--font-mid);
    margin: 15px 0;
}
#div_error
{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
#button_error
{
    background-color: var(--button-bg-color);
    color: var(--button-fg-color);
    font-size: var(--font-std);
    border-radius: 5px; 
    width: 100px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
}

/* stats */
#stats_outer_container
{
    width: 100%;
    text-align: center;
    position: relative;
}
#stats_content
{
    width: 95%;
    padding: 10px;
    display: inline-block;
}

/* web */
#MAIN_CONTENT
{
    position: relative;
    width: 100%;
    background-color: var(--main-bg-color);
    top: 0px;
}
#logo
{
    position: fixed;
    top: 10px;
    left: 20px;
    display: none;
}
#logo_image
{
    max-height: 100px;
}
#top_position
{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 1px;
}
#login_fullscreen 
{
    width: 100%;
    height: 100vh;
    display: none;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0px;
    left: 0px;
}
#login_box 
{
    width: 500px;
    height: 300px;
    background: var(--main-bg-color);
    border: 1px solid var(--button-bg-color)
}
#login_1
{
    display: block;
}
#login_2
{
    display: none;
}
#column_100, #column_100_center
{
    width: 100%;
    clear: both;
    display: inline-block;
    text-align: left;
    float: none;
}
#column_100_center
{
    text-align: center;
}
#group_title
{
    color: var(--group-fg-color);
    background-color: var(--group-bg-color);
    font-size: var(--font-large);
    width: 100%;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
    text-transform: uppercase;
}
#subgroup_title
{
    color: var(--group-fg-color);
    background-color: var(--group-bg-color);
    font-size: var(--font-std);
    width: 100%;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
#row
{
    clear: both;
    width: 100%;
    display: inline-block;
    padding-top: 2px;
    padding-bottom: 2px;
}
#row_title
{
    clear: both;
    width: 100%;
    display: inline-block;
    padding-top: 2px;
    padding-bottom: 2px;
    font-size: var(--table-subtitle-font-size);
    color: var( --table-subtitle-fg-color);
    background-color: var(--table-subtitle-bg-color);
    border-bottom: 1px solid var( --main-fg-color);
}
#row, .row_style
{
    clear: both;
    width: 100%;
    display: inline-block;
    padding-top: 2px;
    padding-bottom: 2px;
    text-align: left;
}
#label, #label_B
{
    float: none;
    width: 100%;
    display: block;
    text-align: left;
    color: var(--label-fg-color);
    font-size: var(--font-std);
}
#input, #input_B
{
    float: none;
    width: 90%;
    display: block;
    text-align: left;
}
.input_num
{
    text-align: right;
}
#field_divisor
{
    width: 100px;
    display: inline-block;
}
.dropdown
{
    color: var(--input-fg-color);
    background-color: var(--input-bg-color);
    border-radius: 3px;
    border: 2px solid var(--input-fg-color);;
}
.dropdown option:checked
{
    background-color: var(--input-fg-color);
    color: var(--input-bg-color);
}
.dropdown_voice a
{
    font-size: var(--font-small);
    padding: 5px;
}
.dropdown_voice a:hover
{
    color: var(--button-fg-color-hover);
    background-color: var(--button-bg-color-hover);
}
.lookup_select
{
    width: 520px;
    border: 1px solid var(--input-fg-color);
    margin-left: 10px;
    margin-top: -10px;
    padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 20px;
    height: 150px;
}
#table
{
    width: 100%;
    clear: both;
    border: 1px solid var( --main-fg-color);
    display: inline-block;
}
#inline
{
    display: inline-block;
}
#button, .button_disable, .button_enable
{
    background-color: var(--button-bg-color);
    color: var(--button-fg-color);
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
    float: left;
    font-size: var(--font-std);
    border-radius: 5px; 
    margin-left: 20px;
}
.button_disable
{
    background-color: var(--disabled-bg-color);
}
#button a, .button_disable a, .button_enable a
{
    color: var(--button-fg-color);
    text-decoration: none;
}
.hidden
{
	display: none;
}
#list_content, #detail_content, #word_content, #attachments_content
{
    display: none;
    position: relative;
    top: 120px;
}
#outer_div
{
    width: 100%; 
    text-align: center;
    position: relative;
    background-color: var(--main-bg-color);
}
#memo
{
    padding-left: 10px;
    padding-right: 10px;
    display: block;
}
#memo_center
{
    padding-left: 10px;
    padding-right: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
#memo_right
{
    padding-left: 10px;
    padding-right: 10px;
    display: block;
    text-align: right;
}
#clear
{
    clear: both;
}
#move_down
{
    clear: both;
    height: 20px;
}
.new_data
{
    color: var(--button-fg-color);
    background-color: var(--button-bg-color);
    font-size: var(--font-small);
    padding-left: 5px;
    padding-right: 5px;
}
.doc_small_image_collection
{
    position: relative;
    top: -110px;
    left: 2px;
    z-index: 10;
    width: 32px;
    background-color: rgba(255, 255, 255, 0.4);
}
.doc_small_image
{
    left: 0px;
    width: 32px;
    z-index: 10;
}
.doc_small_image img
{
    width: 32px;
}
.column_title
{
    text-align: center;
    color: var(--button-fg-color);
    background-color: var(--button-bg-color);
    padding-top: 10px;
    padding-bottom: 10px;
}
.text, .text_inactive
{
    font-size: var(--font-std);
}
.text_inactive, .text_inactive_right
{
    color: var(--text-inactive-fg-color);
    background-color: var(--text-inactive-bg-color);
}
.text a:hover, .text_inactive a:hover
{
    text-decoration: underline;
}
.text_right, .text_inactive_right
{
    font-size: var(--font-std);
    text-align: right;
}
.text_center
{
    font-size: var(--font-std);
    text-align: center;
}
#wait
{
    display: none;
    height: 100%; 
    width: 100%;
    position: fixed;
    left: 0px; 
    bottom: 0px; 
    z-index: 1000;
    text-align: center;
    background-color:rgba(0,0,0,0.2);
    color: var(--main-fg-color);
    font-size: var(--font-std);
}
#inner_wait
{
    position: relative;
    top: 40%;
}
#inner_div, #inner_div_centered, #inner_flex_centered
{
    margin: auto;
    width: 100%; 
    max-width: 1000px;
    text-align: left;
}
#inner_div_centered
{
    text-align: center;
}
#inner_flex_centered
{
    text-align: center;
    justify-content: center;
    display: flex;
}
#inner_div img
{
    max-width: 100%;
}
.small
{
    font-size: var(--font-small);
}
#mobile_divisor
{
    height: 20px;
    position: relative;
    display: block;
    clear: both;
}
#bottom
{
    clear: both;
    color: var(--bottom-fg-color);
    background-color: var(--bottom-bg-color);
    position: relative;
    width: 100%;
    display: inline-block;
}
#outer_div_bottom
{
    width: 100%; 
    text-align: center;
    position: relative;
    background-color: var(--bottom-bg-color);
}
#bottom_title
{
    font-size: var(--font-large);
    color: var(--bottom-title-color);
    text-transform: uppercase;
    font-weight: bold;
}


/* mobile/pc */
@media (min-width: 700px) 
{
    #label
    {
        float: left;
        width: 20%;
        text-align: right;
    }
    #label_B
    {
        float: left;
        width: 35%;
        text-align: right;
    }
    #input
    {
        float: left;
        width: 80%;
    }
    #input_B
    {
        float: left;
        width: 65%;
    }
}

@media (min-width: 800px) 
{
    #menu_outer_div, #logo, .slideshow
    {
        display: block;
    }
    #menu_mobile_header, #mobile_divisor
    {
        display: none;
    }
}
