.viewer-content {
    font-size: 0.6em;
    padding: 0.4em;
}

.viewer-content div[data-type] {
    display: block;
    margin: 0.25em 0;
}
.viewer-content div[data-type] label {
    display: flex;
    align-items: center;
    cursor: text;
}
.viewer-content div[data-type] > label {
    margin-right: 0.2em;
    /* border-bottom: 1.5px solid rgba(0,0,0,0.2); */
    font-weight: 400;
}

/* .viewer-content div[data-type] > * { */
/*     display: inline; */
/* } */
.viewer-content div.selected[data-type]:before {
    display: block;
}
.viewer-content div[data-type] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    /* margin: 0.25em auto; */
    margin: auto;
    /* --btn-size: 15px; */
    --btn-size: 0.65rem;
    --sel-color: rgba(0,0,0,0.2);
    border-radius: 0.2em;
    /* width: calc(100% - 7.25 * var(--btn-size)); */
    max-width: calc(100% - 7.25 * var(--btn-size));
    width: fit-content;
    /* max-width: 100%; */
    min-height: var(--btn-size);
    position: relative; /* for field buttons */
}
.viewer-content div[data-type]:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    /* background: var(--sel-color); */
    box-shadow: 0 0 0.25em 0.75em var(--sel-color), 0 0 0.25em 30em rgba(0, 0, 0, 0.2) inset;    display: none;
    /* z-index: 0; */
}
.viewer-content div[data-type] > * {
    z-index: 0;
}
.viewer-content div[data-type] > *[contenteditable='true'] {
    cursor: text;
    /* cursor: pointer; */
    min-width: 0.2em;
    outline-offset: 0.25em;
    border-bottom: 1.5px dashed transparent;
}
.viewer-content div[data-type] > *[contenteditable='true']:hover {
    border-bottom: 1.5px dashed rgba(0,0,0,0.2);
}

.viewer-content div[data-type='TABLE'] {
    display: inline-flex;
    /* flex-wrap: nowrap; */
    align-items: initial;
    /* justify-content: center; */
    margin-bottom: 2em;
    /* padding-top: 1.25em; */
    position: relative;
}
.viewer-content div[data-type='TABLE'] label.table-title {
    margin: auto;
    display: inline-block;
    font-weight: 400;
    transform: translateY(60%);
}
.viewer-content div[data-type='TABLE'] .controls {
    flex-basis: 100%;
    display: flex;
    justify-content: space-between;
    height: 1.5em;
}
/* instead of 0 opacity controls on view-minutes, for easier docx generation */
.view-agenda div[data-type='TABLE'] .table { 
    margin-top: 1.5em;
}
.viewer-content div[data-type='TABLE'] .dot-menu-btn {
    position: absolute;
    top: 2.6em;
    right: -1em;
}


.viewer-content div[data-ustyle="serif"] {
    font-family: serif;
}
.viewer-content div[data-ustyle="monospace"] {
    font-family: monospace;
}
.viewer-content div[data-ustyle="red"] {
    color: red;
}
.viewer-content div[data-ustyle="bold"] {
    font-weight: bold;
}
.viewer-content div[data-ustyle="italic"] {
    font-style: italic;
}
.viewer-content div[data-ustyle="strike"] {
    text-decoration: line-through;
}

.controls > div {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    margin-bottom: 0.15em;
}
.controls label {
    margin-right: 0.3em;
}
.controls button {
    display: flex;
    align-items: center;
    justify-content: center;
    /* font-size: var(--btn-size); */
    width: 0;
    height: 0;
    padding: 0.5em;
    border-radius: 0;
    --border-radius: 0.2em;
    border-top-left-radius: var(--border-radius);
    border-bottom-left-radius: var(--border-radius);
    border: 0.1em solid #c1bbbb;
    transition: background 0.2s;
}
.controls button + button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius);
    border-left: none;
}
.controls button:hover {
    background-color: rgba(100,100,100,0.1)
}

.controls > div button:before {
    content: '+';
    display: block;
    height: 1.32em;
}
.controls > div button + button:before {
    content: '\2212';
}


.viewer-content .title {
    font-size: 1.2em;
    font-weight: 200;
    text-transform: capitalize;
    text-align: center;
}
.viewer-content .subtitle {
    font-size: 0.8em;
    opacity: 0.8;
}

/* .viewer-content .field { */
/*     font-weight: 400; */
/*     flex-basis: 100%; */
/*     margin: 1em 0; */
/* } */
/* .center { */
/*     text-align: center; */
/* } */

.viewer-content div.time {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85em;
    /* width: fit-content; */
    background: #d3d3d37d;
    padding: 0.15em 0.3em;

}
.viewer-content div.time input:disabled {
    border-radius: 0.5em;
    border: none;
    cursor: default;
    text-fill-color: black;
    -webkit-text-fill-color: black;
    user-select: all;
    -webkit-user-select: all;
}
.viewer-content div.time input:disabled::-webkit-calendar-picker-indicator {
    display: none;
}
.viewer-content div.time input {
    background-color: transparent;
    /* border-radius: 0.5em; */
    border: none;
    font: inherit;
    letter-spacing: inherit;
    cursor: context-menu;
    /* border-bottom: 1px dashed lightgrey; */
}
.viewer-content div.time input::-webkit-calendar-picker-indicator {
    margin: 0;
    margin-left: 0.2em;
    padding: 0;
    height: 1.1em;
    cursor: pointer;
}
.viewer-content div.time input::-webkit-datetime-edit {
    max-width: fit-content;
}

.viewer-content .table {
    font-family: Helvetica Neue;
    /* font-weight: 200; */
    font-weight: 300;
    font-size: 0.9em;
    /* table-layout: fixed; */
    width: 100%;
    max-width: 100%;
    overflow: scroll;
}
.viewer-content .table .tr:first-of-type {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    background-color: #d3d3d37d;
    font-weight: 400;
    z-index: 1; /* needed because of td being position: relative */
    /* --border: darkslategrey; */
}
.viewer-content .table {
    counter-reset: rowNumber;
}
/* .viewer-content .table .tr.body-row .td:first-of-type::before { */
.viewer-content .table .tr:not(:first-of-type) .td:first-of-type::before {
        /* display: table-cell; */
    counter-increment: rowNumber;
    content: counter(rowNumber) ".";
    padding: 0.1em 0;
    padding-right: 0.2em;
    margin-left: -1em;
    text-align: right;
    /* vertical-align: middle; */
}
/* .viewer-content .table .tr.body-row .td:first-of-type { */
.viewer-content .table .tr:not(:first-of-type) .td:first-of-type {
    padding-left: 1.1em;
}

.viewer-content .table .drag-btn {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(-120%);
    /* background-color: pink; */
    /* border: 1px solid darkmagenta; */
    background: url('dragdots.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 125%;
    width: 1em;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: grab;
    opacity: 0.3;
    transition: transform 0.5s;
}
.viewer-content .table .drag-btn:before {
    content: 'drag to reorder';
    position: absolute;
    font-size: 0.5em;
    transform: translateX(-90%);
    opacity: 0;
    transition: opacity 0.3s;
}
.viewer-content .table:not(.dragging) .drag-btn:hover:before {
    opacity: 1;
    transition-delay: 0.75s;
}
.viewer-content .table .drag-btn:hover {
    cursor: grab;
    opacity: 0.5;
}
.viewer-content .table .drag-btn:active,  .viewer-content .table .dragee .drag-btn {
    cursor: grabbing;
    opacity: 1;
    transform: translateX(-150%);
}
.viewer-content .table .tr.dragee {
    background-color: rgba(74, 174, 237, 0.49);
}

.viewer-content .table .td a[data-tooltip]::after {
    width: max-content;
}

