

.data-form {
    position: relative;
    width: 100%;
    height: 100%;
}

.data-form .center {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    margin-top: .5rem;    
}

.data-form .tabs {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 36px;
    padding: 0 1rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    flex-direction: row;    
    background-color: #fff;
    user-select: none;
    overflow-x: auto;
    overflow-y: hidden;    
}

.data-form .tabs .item, .data-form .tabs .loaditem {
    font-weight: 600;
    font-size: .8rem;
    padding: .3em .5rem .3rem .5rem;
    cursor: pointer;
    margin-top: 0.65rem;
    border: 1px solid transparent;
    border-top: 2px solid transparent;
    border-bottom: 1px solid transparent;
    z-index: 1;
}

.data-form .tabs .item.active {
    background-color: #fafafa;
    border: 1px solid #ddd;
    border-bottom: 1px solid transparent;
    border-top: 2px solid #4dac71;
}

.data-form .windows {
    position: absolute;
    top: 35px;
    left: 0;
    right: 0;
    bottom: 4rem;
    display: flex;
    gap: 0.5rem;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    background-color: #fafafa;
    overflow-x: hidden;
    overflow-y: auto;
}

.data-form .windows.has-status-line {
    bottom: 5.8rem;
}

.modal-group-menu {
    position: absolute;
    bottom: 2.2rem;
    left: .5rem;
    background-color: #fefefe;
    border: 1px solid #ccc;
    box-shadow: 3px 4px 8px 0px rgba(130, 120, 120, 0.31);
}


.modal-share-menu {
    position: absolute;
    inset: 0;
    margin: auto;
    margin-top: 5rem;
    width: fit-content;
    height: fit-content;
    min-width: 320px;
    background-color: #fafafa;
    border: 1px solid #ccc;
    box-shadow: 3px 4px 8px 0px rgba(130, 120, 120, 0.31);
}

.modal-share-menu .content {
    position:relative;
    display:flex;
    height: 30rem;
    background-color: #fafafa;
}

.modal-share-menu .header {
    display: block;
    width: 100%;
    height: 2.75rem;
    padding: .4rem 1rem;
    color: #777;
    font-weight: 600;
    font-size: 1.25rem;
    background-color: #f3f3f3;
    border-bottom: 1px solid #ddd;    
}

.modal-share-menu input {
    position: absolute;
    top: 3.5rem;
    left: .75rem;
    right: .75rem;
    width: auto !important;
}
.modal-share-menu .list {
    position: absolute;
    top: 6.5rem;
    right: .75rem;
    left: .75rem;
    bottom: 3.75rem;
    overflow-y: auto;
    border: 1px solid #ddd;
    background-color: white;
}

.modal-share-menu .sharefooter {
    position: absolute;
    display: flex;
    gap: 1rem;
    height: 3rem;
    right: 0;
    left: 0;
    bottom: 0;
    border-top: 1px solid #ddd;
    background-color: #eeeeee;
    overflow: hidden;
    justify-content: center;
    align-items: center; 
}

.modal-share-menu .sharefooter button{
    padding: .2rem 1rem;
    font-size: 0.9rem;
    line-height: 1.2rem;
}

.modal-group-menu.hidden,
.modal-share-menu.hidden {
    display: none;
}

.modal-group-menu > div {
    font-size: 0.8rem;
    padding: .2rem .5rem;
}

.modal-group-menu > div:hover {
    background-color: #dff1e4;
    cursor: pointer;
}


.data-form .top-zero {
    top: 0;
    border: none;
}


.singlewin {
    position: relative;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    padding: 1rem 0 1rem 1rem;
    width: 100%;
}

.data-form .windows .win, .data-form .windows .loadwin {
    display: none;
    position: relative;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;    
    padding: 1rem 0 1rem 1rem;
    width: 100%;
}

.data-form .windows .loadwin {
    position: relative;
    width: 100%;
}

.data-form .windows .loadwin > input[type=text] {
    position: absolute;
    top: 1rem;
    left: 1rem;
    right: 4.5rem;
    width: auto;
    border: 1px solid #ddd;
    appearance: none;
    outline: none;
}

.data-form .windows .loadwin > .pastebutton {
    position: absolute;
    top: 1rem;
    width: 6.5rem;
    right: 1rem;
    color: white;
    font-size: 1rem;
    text-align: center;
    line-height: 2.3rem;
    cursor: pointer;
    background-color: #4dac71;
}


.data-form .windows .loadwin > div {
    position: absolute;
    top: 4.2rem;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
    border: 1px solid #ddd;
    background-color: white;
    overflow-x: hidden;
    overflow-y: auto;    
}

.data-form .windows .win.active {
    display: flex;
}


.data-form .windows .loadwin.active {
    display: block;
}

.data-form .windows .loadwinbutton {
    float: right;
    margin-right: 1.05rem;
}


.data-form .buttons {
    position: absolute;
    height: 4rem;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;    
    gap: 1.5rem;
    border-top: 1px solid #ddd;
    background-color: #eeeeee;
    overflow: hidden;
}

.data-form .buttons.has-status-line {
    bottom: 1.8rem;
}

.data-form .modal-status-line {
    position: absolute;
    display: flex;
    align-items: center;    
    height: 1.8rem;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ddd;
    border-top: 1px solid #ccc;
    user-select: none;
}

.modal-status-item {
    display: inline-block;
    font-size: .8rem;
    max-width: 30%;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-wrap: nowrap;
    overflow: hidden;
    line-height: 1.8rem;
    padding: 0 .5rem;
    border-right: 1px solid #ccc;
}

.modal-status-item:hover {
    background-color: #d6d4d4;
    cursor: pointer;
}

.modal-status-item i {
    padding-right: .5rem;
    color: rgb(178, 109, 224);
}

.modal-status-item i.rwx_0 {
    color: rgb(178, 109, 224);
}

.modal-status-item i.rwx_5 {
    color: #3468af;
}

.modal-status-item i.rwx_7 {
    color: #3ba666;
}

.modal-status-item i.shared {
    color: #3468AF;
    padding-right: 0;
}

.modal-status-line .form-saved i,
.modal-status-line .modal-share i{
    color:#3ba666;
    padding-right: 0;
}

.modal-status-line .form-not-saved i {
    color: rgb(210 67 0);
}

.select-persons {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #e2e2e2;
    user-select: none;
    padding-left: 1.5rem;
}

.select-persons > div {
    padding: .15rem .5rem 0 .5rem;
    font-size: .85rem;
}

.select-persons > div:first-child {
    font-weight: 600;
    padding-top: .25rem;
}

.select-persons > div:last-child {
    padding-top: 0;
    font-size: .65rem;
    color: #555;
}

.select-persons > div > div {
    display: inline-block;
    min-width: 3rem;
}

.select-persons > div > div > i {
    color:#b6b6b6;
    padding-right: 5px;
}

.modal-share-menu .selected {
    background-color: #f6f6f6;
}


.modal-share-menu .selected:before {
    position: absolute;
    content: "✔";
    left: 7px;
    font-size: 1.2rem;
    color: #4dac71;
}

.select-persons:hover {
    cursor: pointer;
}

.data-form label {
    display:flex;
    flex-direction: column;
    flex-wrap: wrap;
    position: relative;
    width: 100%;
    padding-right: 1rem; 
}

.data-form label.adjust {
    position: static;
}

.form-select-window {
    position: absolute;
    display: none;
    left: 0;
    max-width: 98%;
    width: calc(100% - 1rem);
    max-height: 9rem;
    top: 4rem;
    border: 1px solid #ccc;
    background-color: #fff;
    z-index: 10;
    box-shadow: 1px 1px 3px 0px rgba(130, 120, 120, 0.2);
    overflow-y: auto;
    overflow-x: hidden;
}

.form-select-window > div {
    padding: .3rem .5rem;
    font-size: .9rem;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-wrap: nowrap;
    overflow: hidden;    
}

.form-select-window > div:hover {
    background-color: #dff1e4;
    cursor: pointer;
}

.data-form label.button {
    width: auto;
}

.data-form label>span {
    padding-left: 2px;
    font-size: 0.75rem;
    font-weight: bold;
    text-transform: uppercase;
    color: #555;
    user-select: none;
}

input.dropdown-select {
    user-select: none;
    cursor: pointer;
    pointer-events: none;
    color: red;
}

.fieldset {
    width: 100%;
    border-bottom: 1px solid #ddd;
    margin: 1rem 1rem 1.2rem 0;
    padding: .25rem 0 0 0;
    color: #3ba666;
    font-size: .9rem;
    font-weight: bold;
}

.fieldset:first-of-type {
    margin-top: .25rem;
}

.data-form input[type="text"],
.data-form input[type="week"],
.data-form input[type="date"],
.data-form input[type="datetime-local"],
.data-form input[type="password"],
.data-form input[type="email"],
.data-form input[type="checkbox"],
.data-form textarea,
.data-form select,
.data-form button {
    appearance: none;
    text-overflow: ellipsis;
    text-wrap: nowrap;
    overflow: hidden;    
    font-family: inherit;
    margin-bottom: 1rem;
}

.data-form input[type="text"],
.data-form input[type="email"],
.data-form input[type="password"],
.data-form input[type="date"],
.data-form input[type="week"],
.data-form input[type="datetime-local"],
.data-form textarea,
.data-form select {
    display: block;
    width: 100%;
    padding: 0.5rem;
    font-size: 1rem;
    min-height: 2.4rem;
    color: #555;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 2px;
    transition: background-color ease-in-out 0.3s;
    outline: none;
}

.data-form textarea {
    height:7.3rem;
    font-family: 'Raleway', sans-serif;
    resize: vertical;
    line-height: 1.6;
    text-wrap: wrap;
    overflow-y: auto;
}

.data-form label.adjust > textarea {
    position: absolute;
    width: auto;
    height: auto;    
    top: 2.5rem;
    left: 1rem;
    right: 1rem;
    bottom: 0;
}

.monospace > textarea {
    font-family: monospace;
    tab-size: 4;          /* Standard: 4 mellomrom */
    -moz-tab-size: 4;     /* Firefox */
    -o-tab-size: 4;       /* Opera */    
}

.data-form input:focus, .data-form select:focus {
    border-color: #3ba666;
}

.data-form select, .select-arrow-down {
    padding-right: 40px !important;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAADAFBMVEX6+vrgsY2NweX64LaDg7bltn5aVWSIweX64LF5WlVkjcb04LFaVVpaWlVujcYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAEAAAEAAAAZMmRAddwAAAAAAAAAAAAAAAMAAAA9CnMAAAAAAAAAAAAAAAAAAAUAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZKRQAAAAAAAAAAAEAAAAAAQAAAAIAAAAY5zgY5zgAB2w1ODU1NTM+PT00OTU2NTM9VyggLDAsMj1IL1cAAmAAADsAAAAAACk1ODU1NTM+PT03OTU3NTM9VyggLDMsMz1IL1czLDQAApgAAB8AAAAAAA1ZOlg1ID0zOjgAArQAADcAAAAAACY1ODU1NTM+PT0wMDY4NTM9VyggLDYsND1IL1cAAugAADsAAAAAACg1ODU1NTM+PT0zMDY5NTM9VyggLDksNT1IL1c4LDMAAyAAAB8AAAAAAA1ZOlg2ID0zOjQAAzwAADsAAAAAACg1ODU1NTM+PT03MDY5NTM9VyggLDMsNT1IL1c2LDQAA3QAADsAAAAAACg1ODU1NTM+PT0xMTYwNjM9VyggLDcsNj1IL1c1LDQAA6wAAB8AAAAAAA1ZOlg2ID0zOjIAA8gAADcAAAAAACY1ODU1NTM+PT00MTYwNjM9VyggLDAsNj1IL1cAA/wAADcAAAAAACY1ODU1NTM+PT05MTYxNjM9VyggLDUsNz1IL1fpa83VAAAAAXRSTlMAQObYZgAAAAlwSFlzAAALEgAACxIB0t1+/AAAADdJREFUeNpjYBgFQxEwMkFoZhYcCljZ2EEUBycXAz4VeOTBKrjxyQNV8PDilQeq4BvooBoFFAAArV8A0MHMKv0AAAAASUVORK5CYII=');
    background-position: center right;
    background-repeat: no-repeat;
}

select::-ms-expand {
    display: none;
}

select {
appearance: none; 
}   

.data-form input[type='checkbox']+label,
.data-form input[type='radio']+label {
    display: inline-block;
    font-weight: normal;
    padding: 0;
    margin: 0;
    padding-right: 1rem;
    margin-bottom: 1rem;
    user-select: none;
    color: initial;
    cursor: pointer;
}

.data-form input[type='checkbox']+label.dialog {
    margin-top: 1.7rem;
}

.data-form input[type='checkbox']+label::before,
.data-form input[type='radio']+label::before {
    content: '';
    width: 1rem;
    display: inline-block;
    height: 1rem;
    margin: 0 .5rem 0 2px;
    border: 2px solid #fff;
    background-color: #fff;
    transition: background-color ease-in-out 0.2s;
    outline: 1px solid #777;
    vertical-align: text-top;
    cursor: pointer;
}

.data-form input[type='radio']+label::before {
    border-radius: 2px;
}

.data-form input:checked+label::before {
    background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAAGHaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49J++7vycgaWQ9J1c1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCc/Pg0KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyI+PHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj48cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0idXVpZDpmYWY1YmRkNS1iYTNkLTExZGEtYWQzMS1kMzNkNzUxODJmMWIiIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIj48dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPjwvcmRmOkRlc2NyaXB0aW9uPjwvcmRmOlJERj48L3g6eG1wbWV0YT4NCjw/eHBhY2tldCBlbmQ9J3cnPz4slJgLAAAAZklEQVQoU42PwQ3AMAgD3U7EAKzENIxk9nI/SYQqpPZ+GCHOMDOZmUjqDUnt/Y1FRKCq9oiqQkSc+SKpHmQmsA57dknS+7qTmXB3YPKZvI/jFzcG8U0v+L+MmakH7g5MXybxTS/4AOb8iKY+G6XCAAAAAElFTkSuQmCC');
    background-repeat: no-repeat;
    background-position: center center;
}

.data-form input[type='checkbox'],
.data-form input[type='radio'] {
    display: none;
}

.data-form input[type="submit"],
.data-form button,
.data-form a.button,
.data-form select,
.data-form input[type='checkbox'],
.data-form input[type='radio'] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.data-form input[type="submit"],
.data-form a.button,
.data-form .button,
.data-form button {
    margin:0;
    display: inline-block;
    cursor: pointer;
    background-color: #3ba666;
    color: white;
    font-size: .95rem;
    max-width: 100%;
    padding: 0.4rem 1.5rem;
    outline: none;
    line-height: 1.2;
    border: 1px solid #3ba666;;
    transition: background-color ease-in-out 0.3s;
}

.center-buttons {
    display: flex;
    gap: 1.5rem;
    width: 100%;
    justify-content: center;
}

.data-form button.gray {
    background-color: #ddd;
    color: #333;
    border:1px solid #ccc;
}

button:focus, button.gray:focus {
    outline: 1px solid #ababab;
    outline-offset: 2px;
}


.data-form input[type="submit"]:hover,
.data-form .button:hover,
.data-form a.button:hover,
.data-form button:hover {
    background-color: #4dac71;
    text-decoration: none;
}

.data-form button.gray:hover {
    background-color: #d0d0d0;

}

@media only screen and (min-width: 769px) {


}

@media only screen and (min-width: 369px) {
    .width-s-1-12 { width: 8.333% !important; }
    .width-s-2-12 { width: 16.666% !important; }
    .width-s-3-12 { width: 25% !important; }
    .width-s-4-12 { width: 33.333% !important; }
    .width-s-5-12 { width: 41.666% !important; }
    .width-s-6-12 { width: 50% !important; }
    .width-s-7-12 { width: 58.333% !important; }
    .width-s-8-12 { width: 66.666% !important; }
    .width-s-9-12 { width: 75% !important; }
    .width-s-10-12 { width: 83.333% !important; }
    .width-s-11-12 { width: 91.666% !important; }
    .width-s-12-12 { width: 100% !important; }
}

@media only screen and (min-width: 500px) {
    .width-m-1-12 { width: 8.333% !important; }
    .width-m-2-12 { width: 16.666% !important; }
    .width-m-3-12 { width: 25% !important; }
    .width-m-4-12 { width: 33.333% !important; }
    .width-m-5-12 { width: 41.666% !important; }
    .width-m-6-12 { width: 50% !important; }
    .width-m-7-12 { width: 58.333% !important; }
    .width-m-8-12 { width: 66.666% !important; }
    .width-m-9-12 { width: 75% !important; }
    .width-m-10-12 { width: 83.333% !important; }
    .width-m-11-12 { width: 91.666% !important; }
    .width-m-12-12 { width: 100% !important; }
}

@media only screen and (min-width: 769px) {
    .width-l-1-12 { width: 8.333% !important; }
    .width-l-2-12 { width: 16.666% !important; }
    .width-l-3-12 { width: 25% !important; }
    .width-l-4-12 { width: 33.333% !important; }
    .width-l-5-12 { width: 41.666% !important; }
    .width-l-6-12 { width: 50% !important; }
    .width-l-7-12 { width: 58.333% !important; }
    .width-l-8-12 { width: 66.666% !important; }
    .width-l-9-12 { width: 75% !important; }
    .width-l-10-12 { width: 83.333% !important; }
    .width-l-11-12 { width: 91.666% !important; }
    .width-l-12-12 { width: 100% !important; }
}

@media only screen and (max-width: 300px) {
    .width-1-12, .width-2-12, .width-3-12, .width-4-12, .width-5-12, .width-6-12, .width-7-12, .width-8-12, .width-9-12, .width-10-12, .width-11-12, .width-12-12 { width: 100% !important; }
}


