.screen {
    transition-delay:0.2s;
}

button svg * { transition:inherit; }
.bw { /*button wrapper*/
    display:inline-block;
    box-shadow:5px 5px 2px gray;
    margin:0px 1em;
}
.bw, button, button:before {
    border-radius:50%;
}
.bw, button {
    position:relative;
}
button, button:before {
	width:125px;
	height:125px;
}
button {
    font-family:'Varela Round';
    color:hsl(177, 37%, 50%);
	top:0px;
	left:0px;
	border:solid 5px;
	background:white;
	margin:5px;/* border width of :before */
	overflow:visible; /* required for IE10 to display :before border */
}
button:before {
	content:"";
	display:block;
	position:absolute;
	top:-10px;/* sum of both border widths */
	left:-10px;
	border:solid 5px white;
}
button[disabled] {
    color:silver;
}
/* ie7, 8 require polyfill for :not() selector */
button:not(:active), button:not(:active):before, button svg {
    transition-delay:0.1s;
	transition-duration:0.2s;/* pop-out time */
}
button:not([disabled]):active {
    top:5px;
    left:5px;
    background:hsl(36, 42%, 70%);
}
button:not([disabled]):active, button:not([disabled]) svg {
    transition-duration:0.02s; /*push-in time*/
}
button:not([disabled]):active:before {
    border-color:hsl(36, 42%, 70%);
}

#haYes, #haNo {
    font-size:32px;
}
#kiosc-begin {
    font-size:24px;
}
.play {
    font-size:18px;
    line-height:0.9;
}
.play > svg {
    width:60px;
	height:60px;
    margin-top:-10px;
}
.play[disabled] > svg > g {
    stroke:silver;
}
.play[disabled] > svg > path {
    fill:silver;
}
.miss {
    background:hsl(0, 70%, 50%);;
    border-color:white;
    margin:2px;
    color:white !important;
    padding-bottom:2px;
    font-weight:bold;
}
.miss:before {
    top:-4px;
    left:-4px;
    border-color:hsl(0, 70%, 50%);
}
.miss, .miss:before {
    width:30px;
    height:30px;
    border-width:2px;
}
.miss:not([disabled]):active {
    top:2px;
    left:2px;
}
.miss[disabled] {
    background:silver;
}
.miss[disabled]:before {
    border-color:silver;
}
#w-practiceMissed, #w-testMissed {
    box-shadow:2px 2px 2px gray;
    margin-top:1ex;
    margin-left:0.5ex;
}

#test-screen > h1 {
    position:absolute;
    top:0em;
    width:80%;
}
#test-screen > table { margin-top:5.333em;}

em {
    color:hsl(177, 37%, 50%);
    font-weight:bold;
}
/* start screen */
    #no-name {
        display: inline-block;
        font-weight: normal;
        line-height: 3;
        margin-left: 1em;
        padding: 0ex 1ex;
    }
        #no-name a {
            color:black;
        }
        
/* intro screen */
    #intro-not-working, #devices-supported {
        margin-left:4%;
        max-width:750px;
        border:solid 1px gray;
        padding:1em;
    }
    #intro-not-working {
        background:hsla(0,100%,50%,0.1)
    }

/* loading screen */
    #load-message {
        text-align:center;
        margin-top:10%;
    }
    #load-done {
        display:inline-block;
        width:3em;
        text-align:right;
    }
    #load-progress {
        width:15em;
    }

/*practice-screen*/
    #startTest, #finishTest {
        margin-top:1em;
        font-size:150%;
    }
table{
    margin-left:auto;
    margin-right:auto;
    border-spacing:1ex;
}
td {
    max-width:300px;
    text-align:center;
}
tr:first-child {
    vertical-align:top;
}
ol {
    text-align:left;
    margin:0px;
}
tr:nth-child(2) > td:nth-child(even):after {
    content:"";
    display:block;
    height:100px;
    width:2px;
    background:white;
}
tfoot td {
    text-align:right;
}

.playButton {
    height:120px;
}
.responseButton, .missedButton {
    height:100px;
    width:100px;
    margin:0px 10px;
}
.cw {
    position:relative;
    min-height:40px;
}
.error {
    position:absolute;
    background:red;
    color:white;
    padding:0.25em;
    visibility:hidden;
    z-index:10;
}
.error a:link, .error a:visited {
    color:black;
}
.missing-input, .bad-input {
    width:20em;
    bottom:100%;
    left:50%;
    margin-left:-10.25em;
    margin-bottom:1ex;
}
.missed-word {
    width:20em;
    top:100%;
    right:0px;
    margin-top:1ex;
}
.missedButton:hover + .missed-word {
    visibility:visible;
}

.variant-input {
	display: none;
}

.required label:after {
    content:'*';
    color: red;
}
.required-note {
    margin-top: 0;
    font-size: 0.83em;
}

audio {
    display: block;
    margin: 2em auto;
    max-width: 360px;
    width: 100%;
}