.border {       
    border: 1px solid #ccc;
    margin: 10px;
    padding: 10px;
}

.center {
    text-align: center;
}

div.editor {
    display: table;
    margin-left: auto;
    margin-right: auto;
}

div.editor div {
    display: table-cell;
    padding: 20px;
}

div.lists {
    text-align: center;
}

div.m3u-tab-container {
    display: inline-block;
}

form.editor {
    display: inline-block;
}

iframe {
    border-color: #000000;
    margin-left: auto;
    margin-right: auto;
}

h1 {
    text-align: center;
}

h2 {
    text-align: center;
}

h3 {
    text-align: center;
    margin-block-start: 1.5em;
    margin-block-end: 0em;
}

h3.error {
    margin-block-start: 1em;
    margin-block-end: 0.5em;
    color: #ff0000;
}

h4 {
    margin-block-start: 0em;
    margin-block-end: 0em;
}

table {
    margin-left: auto;
    margin-right: auto;
    text-align: start;
}

td {
    padding: 5px;
    vertical-align: middle;
}

td.code {
    background-color: #eeeeee;
    border-color: #000000;
}

td.header {
    text-align: right;
}

*[class$="tab"] {
    text-align: center;
    overflow: hidden;
    border: 1px solid #ccc;
    background-color: #f1f1f1;
}

*[class$="tab"] button {
    font-size: 1em;
    background-color: inherit;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 14px 16px;
    transition: 0.3s;
}

.m3u-tab button {
    font-size: 90%;
}

*[class$="tab"] button:hover {
    background-color: #ddd;
}

*[class$="tab"] button.active {
    background-color: #ccc;
}

*[class$="tabcontent"] {
    display: none;
    padding: 6px 12px 25px;
    border: 1px solid #ccc;
    border-top: none;
    animation: fadeEffect 1s;
}

@keyframes fadeEffect {
    from {opacity: 0;}
    to {opacity: 1;}
}

body.dragging, body.dragging * {
    cursor: grabbing !important;
}

.dragged {
    position: absolute;
    top: 0;
    opacity: .5;
    z-index: 2000;
}

ol {
    padding: 0;
    list-style-type: none;
    min-height: 20px;
    min-width: 50px;
    border: 1px solid #eeeeee;
    border-radius: 4px;
}

ol.active {
    border: 1px solid #333333;
}

ol li {
    cursor: grab;
    display: block;
    margin: 2px 3px 2px 3px;
    padding: 3px 5px 3px 5px;
    border: 1px solid #cccccc;
    border-radius: 3px;
    background: #f1f1f1;
}

ol.groups li {
    text-align: center;
}

ol.channels li {
    text-align: left;
    color: #1766ab;
    background: #f6f6f6;
}

ol.new li {
    color: #008000;
    background: #f6f6f6;
}

ol.trash li {
    color: #ff0000;
    background: #f6f6f6;
}

ol li.placeholder {
    position: relative;
    margin: 0;
    padding: 0;
    border: none;
}

ol li.placeholder:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    margin-top: -5px;
    left: -5px;
    top: -4px;
    border: 5px solid transparent;
    border-left-color: #ff0000;
    border-right: none;
}

span.group-name {
    cursor: pointer;
    border: 1px solid #ccc;
    padding: 0px 10px;
    border-radius: 20px;
    background-color: #ebebeb;
}

