html,body{
    height:100%;
    margin:0;
    font-family: 'Gotham';
    color: #fff;
}

body{
    background: linear-gradient(
        to bottom,
        #274a82,
        #4f7ec2,
        #7fb4e6
    );
    background-attachment: fixed;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    padding-top: 20px;
}

html, body, svg.lung, svg.lung * {
    cursor: none !important;
}

#needle{
    position:fixed;
    width:60px;
    pointer-events:none;
    transform-origin:10% 90%;
    z-index:9999;
}

svg.lung{
    width:800px;
    max-width:90vw;
}

h1{
    font-weight: bold;
}

.motivation-dialog {
    box-shadow: 2px 3px 10px 2px rgba(0, 0, 0, .3);
    width: 550px;
    background: #fff;
    color: #666;
    padding: 50px 40px;
    border-radius: 10px;
    border: 3px solid #1b3c7c;
    font-size: 16px;
    line-height: 19px;
    font-weight: 300;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer !important;
    display: none;
    z-index:1000;
    max-width: 95vw;
}

.motivation-dialog.closed {
    transform: translate(-50%, -50%) scale(0);
    opacity: 0;
}

.motivation-dialog p {
    margin: 0;
    font-size: 22px;
    line-height: 25px;
}

.motivation-dialog #startButton {
    padding: 15px 35px;
    margin-top: 25px;
    background: #1b3c7c;
    color: #fff;
    border: none;
    border-radius: 10px;
    cursor: pointer;
}

.dialog{
    box-shadow:2px 3px 10px 2px rgba(0,0,0,.3);
    width:600;
    background:#fff;
    color:#666;
    padding:30px 40px;
    border-radius:10px;
    border:4px solid #1b3c7c;
    position:fixed;
    top:50%;
    left:50%;
    transform:translate(-50%, 80vh) scale(.9);
    transition:transform .6s cubic-bezier(.25,.8,.25,1);
    z-index:1000;
    max-width: 95vw;
}

.dialog h4 {
    margin-bottom: 18px;
    color: #1b3c7c;
}

.dialog p {
    font-weight: 300;
}

/* megjelenés */

.dialog.show{
    transform:translate(-50%, -50%) scale(1);
}

/* stackelt állapot */

.dialog.stacked{
    transform:translate(-50vw,-50vh) scale(.5);
    z-index: 1;
}

.dialog.stacked p {
    font-size: 23px;
    margin-bottom: 0;
    color: #000;
    font-weight: 400;
}

@media (orientation: landscape) and (max-width: 1366px) {
    .dialog.stacked{
        width: 450px;
    }
}

.dialog button{
    padding:10px 16px;
    border:none;
    border-radius:6px;
    cursor:pointer;
    position: absolute;
    right: 0px;
    bottom: 0px;
    background: none;
    color: #1b3c7c;
}

.overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.35);
    opacity:0;
    transition:opacity .3s;
    pointer-events:none;
    z-index:900;
}

.overlay.visible{
    opacity:1;
    pointer-events:auto;
}

.btn-group {
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 9999;
}

.btn-group .btn.btn-secondary {
    background-color: #1b3c7c;
    width: 50px;
    height: 50px;
    border-radius: 100%;
}

.btn-group .btn.btn-secondary:before, .btn-group .btn.btn-secondary:after {
    display: none;
}

.dropdown-menu {
    background-color: rgba(0, 0, 0, .2);
    border: none;
    margin-bottom: 5px !important;
    backdrop-filter: blur(10px);
}

.dropdown-item {
    color: #fff;
    font-weight: 100;
    padding: 0.55rem 1rem;
}

.dropdown-item:focus, .dropdown-item:hover {
    background-color: rgba(255,255,255,.2);
    color: #fff;
}

.copd{
    max-width:800px;
    margin:auto;
    line-height:1.6;
    text-align: left;
    font-weight: 300;
}

.copd h1{
    color:#7a2bbd;
}

.copd h2{
    color:#7a2bbd;
    margin-top:40px;
    font-size: 20px;
}

.copd-highlight{
    border:3px solid #7a2bbd;
    border-radius:12px;
    padding:18px;
    margin:40px 0;
    text-align:center;
    font-weight:bold;
}

#bottomBar {
    position: fixed;
    bottom: 10px;
    left: 10px;
    height: 50px;
    width: calc(100vw - 20px - 60px);
    align-items: center;
    justify-content: space-around;
}

#bottomBar .stage {
    width: 50px;
    height: 50px;
    border-radius: 100%;
    background-color: #1b3c7c;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    line-height: 50px;
    font-weight: 300;
    position: relative;
    bottom: -100px;
    cursor: pointer;
    text-decoration: none;
    transition:all .6s cubic-bezier(.25,.8,.25,1);
}

#bottomBar .stage.show {
    bottom: 0px;
}

.bs-popover-auto > .popover-arrow::after, 
.bs-popover-end > .popover-arrow::after {
    display: none !important;
    border-color: rgba(255,255,255,.6) !important;
}

.bs-popover-auto > .popover-arrow::before, 
.bs-popover-end > .popover-arrow::before {
    border-color: transparent !important;
    display: none !important;
}

.popover {
    background: transparent !important;
}

.popover-header {
    background: rgba(0,0,0, 0.3);
    backdrop-filter: blur(10px);
}

.popover-body {
    background: rgba(0, 0, 0, .2);
    color: #fff;
    backdrop-filter: blur(6px);
    font-weight: 100;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
}

#mat {
    position: fixed;
    left: 10px;
    bottom: 5px;
    font-size: 12px;
    font-weight: 300;
}

@media screen and (max-width: 992px) {
    #bottomBar, .btn-group {
        bottom: 35px;
    }
}

.step-progress {
    width: 70vw;
}

.steps {
    pointer-events:none;
    transform: translateY(-50%);
}

.step {
    width:32px;
    height:32px;
    border-radius:50%;
    background:#dee2e6;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:600;
}

.step.active {
    background:#0d6efd;
    color:white;
}

.video-circle {
    width: 250px;
    height: 125px;
    overflow: hidden;
    border-radius: 50%;
    background: white;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0px auto;
}

.video-circle video {
    width: auto;
    height: 100%;
    background: white;
    clip-path: circle(60px at center);
}