body {
    margin:0;
    padding:0;
    background-color:#ffffff;
    font-family:'Titillium Web';
    color:#222222;
    overflow-x:hidden;
}

header {
    height:42px;
    background-color:#c5cae9;
    color:#1a237e;
    line-height:42px;
    overflow:hidden;
    text-align:left;
    font-family:'Delius Swash Caps';
    font-size:20px;
    font-weight:normal;
    padding:0 5px;
}
#results-overlay {
    width:60px;
    height:32px;
    margin:5px;
    float:right;
    font-family:'Titillium Web';
    font-size:16px;
    color:black;
    background-color:white;
    border-radius:4px;
    padding:0 6px;
    line-height:32px;
    box-sizing:border-box;
    font-weight: bold;
}
#results-overlay i {
    font-size:14px;
    display:inline-block;
    margin:0 3px 0 0;
}
section {
    z-index:2;
}
a {
    color:#3f51b5;
}

#main-art {
    width:100%;
    background-size:contain;
    background-image:url('main-art.png?');
    background-repeat: no-repeat;
    background-position: center;
    aspect-ratio: 746 / 953;
    position:relative;
}
section .onesignal-customlink-container {
    min-height: 2em;
    text-align: center;
}
#menu {
    padding:8px 0;
}
.mark {
    position:absolute;
    width:6.5vw;
    height:6.5vw;
    color:blue;
    line-height:6.5vw;
    text-align:center;
    font-size:4vw;
}
.mark .fa-flag-pennant {
    color:#f44336;
    font-size:3.5vw;
}
.mark .fa-arrows-to-circle {
    color:#2196f3;
}
.mark .fa-lock-keyhole {
    color:#ccc;
    font-size:2.5vw;
    color:#4db6ac;
}
.mark .fa-lock {
    color:#ccc;
    font-size:2.5vw;
    color:#4db6ac;
}

.points {
    margin:-8px -8px 10px -8px;
    background-color:#3f51b5;
    color:white;
    text-align:center;
    padding:6px 0;
    font-size:17px;
    box-sizing:border-box;
}
.points i {
    color:#3f51b5;
}

section button {
    text-align:center;
    font-size:23px;
    background-color:#3f51b5;
    color:white;
    text-align:center;
    display:block;
    width:90vw;
    border:none;
    border-radius:6px;
    margin:10px auto;
    padding:4px;
    font-family:'Titillium Web';
    transition:.2s;
}
section button.smb {
    font-family:'Titillium Web';
    font-weight:400;
    font-size:15px;
}
section button:active {
    transform:scale(0.95);
    opacity:.8;
}
#menu button {
    text-align:left;
}
#menu button b {
    font-size:23px;
    font-weight:normal;
}
#menu button small {
    display:block;
    padding-top:4px;
    font-size:16px;
}
h2 {
    font-size:22px;
    color:#1a237e;
    margin:5px 0 10px 0;
    padding:0;
    text-align:center;
    font-family:'Delius Swash Caps';
}
h3 {
    font-size:18px;
    color:#3f51b5;
    margin:20px 0 2px 0;
    padding:0;
    font-weight:bold;
}
h3 ~ p {
    margin-top: 0;
}
.fa-sack-xmark {
    color:#009688;
}
section {
    padding:8px;
}
.task {
    font-weight:bold;
    margin-top:10px;
}

.option:has(input:checked) label {
    color:#3f51b5;
    font-weight:bold;
}

#decorWeb {
    position:fixed;
    bottom:15px;
    right:15px;
    width:50vw;
    height:50vw;
    font-size:40vw;
    text-align:center;
    color:#222;
    line-height:50vw;
    z-index:-2;
}
#decorBat {
    position:fixed;
    top:38px;
    left:15px;
    width:30vw;
    height:30vw;
    font-size:25vw;
    text-align:center;
    color:#000;
    transform:rotate(180deg);
    z-index:-2;
}
input[type='number'] {
    font-family: 'Titillium Web';
    font-size: 17px;
    padding: 3px;
    width: 100px;
    border-radius: 4px;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(255,255,255,.6);
    background-color: black;
    color: #1a237e;
}
input[type='text'] {
    font-family: 'Titillium Web';
    font-size: 17px;
    padding: 3px;
    width: 100%;
    border-radius: 4px;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(255,255,255,.6);
    background-color: black;
    color: #1a237e;
    box-sizing: border-box;
}
.btn-icons {
    float:right;
}
button.notYet {
    background-color:#444;
}
#felirat {
    text-align:center;
    margin:0;
    padding-bottom:6px;
}
/* Animált szellemek */
#ghosts {
    display:block;
    position:fixed;
    top:110vh;
    text-align:center;
    z-index:999;
}
#ghosts.active #ghost1 {
    transform:translate(-15%,-220vh) scale(1.5);
    
}
#ghosts.active #ghost2 {
    transform:translate(5%,-190vh) scale(2);
}
#ghosts.active #ghost3 {
    transform:translate(22%,-230vh) scale(1.3);
}
#ghosts img {
    width:30vw;
    transition:0s;
}
#ghosts.active img {
    transition:2.5s;
}

/* Név beírás */
.input-text  {
    width:230px;
    margin:auto;
    border-style:solid;
    border-width:1px;
    border-color:rgba(255,255,255,.6);
    border-radius:6px;
    color:#3f51b5;
    padding:5px;
    font-size:16px;
}
.input-text input {
    border:none;
    background-color:transparent;
    color:#3f51b5;
    width:170px;
    font-size:16px;
    border-style:solid;
    border-color:#3f51b5;
    border-width:2px;
}


/* Renderer */
#activity .badge {
    color:white;
    line-height:16px;
    font-size:14px;
    border-radius:16px;
    font-weight:bold;
    display:inline-block;
    padding:2px 8px;
    margin-bottom:8px;
}
#activity .badge-szám {
    background-color:red;
}
#activity .badge-opciók {
    background-color:green;
}
#activity .badge-kép {
    background-color:purple;
}
#activity .badge-multi {
    background-color:blue;
}
#activity .badge-logikai {
    background-color:black;
}
#activity .badge-pár {
    background-color:orange;
}
#activity .question .kerdes {
    font-size:16px;
}
#activity .valasz {
    text-align:center;
    font-size:15px;
    font-weight:bold;
}
#activity .number input {
    text-align:center;
    display:block;
    width:50vw;
    margin:20px auto 3px auto;
}
    #activity .kep {
        text-align:center;
    }
    #activity .kep img {
        max-width:80vw;
        max-height:80vw;
    }
    #activity h3 {
        font-weight:normal;
        font-family:'Nunito';
        font-size:32px;
        margin-top:30px;
        margin-bottom:6px;
    }

    #activity .caption {
        font-weight:normal;
        font-family:'Nunito';
        font-size:16px;
        color:red;
        margin-bottom:10px;
    }
#activity {
}
    #activity .question {
    bborder-style:solid;
    bborder-color:#bbb;
    bborder-width:1px;
    bborder-radius:0;
    padding:10px;
    margin:5px 10px;
    background-color:#eee;
    border-radius:6px;
    margin-bottom:15px;
    transition: .25s;
}
#activity .question.right {
    background-color: #f1f8e9;
}
#activity .question.wrong {
    background-color: #ffebee;
}
#activity .kerdes {
    margin-bottom:6px;
}
#activity .valasz label {
    display:block;
}
#activity .feedback {
    color:#3949AB;
    background-color: rgba(0, 0, 0, .05);  
    border-radius:4px;
    padding:5px;
    margin:5px 0 0 0;
    font-size:16px;
    display:none;
}
#activity input[type='number'] , 
#activity input[type='text'] {
    border-width:1px;
    border-color:#666;
    border-style:solid;
    width:70px;
    background-color:white;
    border-radius:4px;
        font-size:18px;
    padding:4px;

}
#activity .valasz label {
    display:block;
    text-align:left;
    padding:7px 2px;
    border-style:solid;
    border-radius:4px;
    border-width:1px;
    border-color:#999;
    color:black;
    font-size:15px;
    font-weight:normal;
    margin-top:4px;
    font-weight:bold;
}
#activity .valasz label.bool-igaz {
    color:green;
    display:inline-block;
    width:47%;
}
#activity .valasz label.bool-hamis {
    color:maroon;
    display:inline-block;
    width:47%;
}
#activity .valasz label input {
    font-size:13px;
    height:13px;
}
#activity .valasz label:has(input:checked) {
    background-color:#FFE082;
}
@media (prefers-color-scheme: dark) { 
    #activity {
        background-color:#222;
    }   
    #activity .question {
        background-color:#050505;
        border-color:#333;
        color:#e5e5e5;
    }
    #activity input[type='number'], #activity input[type='text'] {
        color:white;
        background-color:#333;
        border-color:#555;
    }
    #activity .feedback {
        color:#64b5f6;

    }
    #activity .valasz label {
        color:white;
    }
    #activity .valasz label:has(input:checked) {
    background-color:#333;
}
}


.marker svg {
  width: 26px;
  display: block;
  float:right;
  margin:0;
}
.path {
  stroke-dasharray: 1000;
  stroke-dashoffset: 0;
}
.path.circle {
  animation: dash 0.9s ease-in-out;
}
.path.line {
  stroke-dashoffset: 1000;
  animation: dash 0.9s 0.35s ease-in-out forwards;
}
.path.check {
  stroke-dashoffset: -100;
  animation: dash-check 0.9s 0.35s ease-in-out forwards;
}

@keyframes dash {
  0% {
    stroke-dashoffset: 1000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes dash-check {
  0% {
    stroke-dashoffset: -100;
  }
  100% {
    stroke-dashoffset: 900;
  }
}
input {
    color:darkblue;
}
.results-display {
    display:none;
    background-color: #E8EAF6;
    color: black;
    border-radius: 5px;
    padding: 5px;
    text-align: center;
}
.results-display table {
    border-collapse: collapse;
    width:100%;
}
.results-display td {
    border-style:solid;
    border-color:rgba(0,0,0,.5);
    border-width:1px;
}


/* DIALÓGUS */ 
#dialog {
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:100;
    background-color: rgba(0,0,0,.5);
    text-align:center;
    display:none;
}
#dialog.shown {
    display:block;
}
#dialog #dialogInner {
    transform:translateY(-100%);
    opacity:0;
    transition:.3s;
}
#dialog.shown #dialogInner {
    transform:translateY(0);
    opacity:1;
    transition:.3s;
}
#dialogInner {
    position:fixed;
    top:48px;
    right:0;
    left:0;
    margin:auto;
    width:80vw;
    padding:10px;
    z-index:95;
    border-radius:3px;
    background-color:#f5f5f5;
    box-shadow: 1px 1px 3px 0 rgba(0,0,0,.2);
    transition:.3s;
    display:block;
    text-align:left;
}
#dialogInner h2 {
    margin: 5px 0 10px 0;
    text-align: center;
    font-size: 24px;
}
#dialogInner button {
    display: block;
    height: 34px;
    line-height: 34px;
    font-family: 'Titillium Web';
    font-size: 17px;
    border: none;
    background-color: #3f51b5;
    padding: 0 6px;
    vertical-align: middle;
    margin-bottom: 4px;
    color: #fff;
    text-align: center;
    min-width: 32px;
    margin-right: 3px;
    cursor: pointer;
    box-sizing: border-box;
    border-radius: 3px;
    margin-top:6px;
        width: 60%;
    margin: auto;
}

/* Kiválasztó */
.tipus {
    background-color: #fff;
    border: solid 2px #3f51b5;
    color: #3f51b5;
}
.tipus i {
    float: left;
    font-size: 40px;
    padding: 5px;
    margin-top:3px;
    margin-right:8px;
}
.tipus small {
    opacity: .6;
    display: block;
    font-size: 14px;
    text-align:left;
}
.tipus span {
    font-size:18px;
    display:block;
    text-align:left;
    margin-top:5px;
}

.onboarding {
    font-size:10px;
    text-align:center;
    color:#2196f3;
}
.onboarding i {
    display:inline-block;
    margin:8px 8px;
}

/* ADMIN */
#kereso {
    background-color: yellow;
    padding: 5px;
    line-height: 32px;
}
#users {
    width: calc(100vw - 300px);
    float: right;
    padding: 5px;
    color:red;
    background-color: yellow;
}
#admin-kimenet pre {
    background-color:#eee;
    font-size:14px;
    padding:5px;
}