/*!
 * Bootstrap Reboot v4.0.0-beta.2 (https://getbootstrap.com)
 * Copyright 2011-2017 The Bootstrap Authors
 * Copyright 2011-2017 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

@-ms-viewport {
  width: device-width;
}

article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  color: #0056b3;
  text-decoration: none;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

a,
area,
button,
[role="button"],
input:not([type="range"]),
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #868e96;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: .5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}
/*# sourceMappingURL=bootstrap-reboot.css.map */

            body {
	background-color:#65c448;	
	height:100%;
	font-family:Verdana, Arial, Helvetica, sans-serif;
    overflow-y:hidden;
}

* {
    box-sizing:border-box;
}

#save-form {
    padding-top:20px;
    /*border:5px solid black;*/
    margin-bottom:0;
}

#control-panel {
    margin-top:20px;
    background-color:rgba(255,255,255, .9);
    z-index:1;
    /*border-top-right-radius:25px;
    border-top-left-radius:25px;*/

    box-shadow:0 7px 14px 0 rgba(50,50,93,.1),0 3px 6px 0 rgba(0,0,0,.07);
    border-radius:3px;
    margin-left:20px;
    margin-right:20px;
    padding:15px;
}

#control-panel .row {
    display:table-row;
}

input, textarea, select {
	display:block;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	margin:auto;
}

.hide {
    display:none;
}

.table-cell {
    display:inline-block;
    /*border:1px solid black;*/
}

#question-grid {
    margin-top:5px;
}

#question-grid .table-row:first-child {
    border-top:3px solid black;
}

#question-grid .table-row:last-child {
    border-bottom:3px solid black;
}

#question-grid .table-row {
    border-left:3px solid black;
    border-right:3px solid black;
}

#question-grid .table-cell {
    border:3px solid black;
    vertical-align:middle;
}

#question-grid .table-cell-inner {
    transform: translateY(-50%);
    top: 50%;
    position: relative;
}

#categories .table-cell-inner {
    transform: translateY(-100%);
    top: 100%;
    position: relative;
    margin-left:10px;
    margin-right:10px;
}

#question-grid .table-cell-inner h3 {
    font-size:36px;
}

#question-grid .table-cell:hover {
    background-color:rgba(255,255,255, .05);
}

#question-grid .table-cell:hover,
#question-grid .table-cell:focus,
#question-grid .table-cell.active {
    border-color:#ffff00;
    border-style:solid;
}


#question-grid .table-cell:focus {
    border-style:dotted;
}

#question-grid .table-cell.active,
#question-grid .table-cell:hover {
    border-style:solid;
}

#categories {
    border-left:3px solid transparent;
    border-right:3px solid transparent;
}

#categories .table-cell {
    border-left:3px solid transparent;
    border-right:3px solid transparent;
}


#categories textarea {
    font-size:18px;
}

#save-form textarea {
    display:block;
    width:100%;
	background-color:#65c448;
	color:#ffff5f;
    text-align:center;
    border:none;
    resize:none;
    padding:5px;
}

textarea#title {
    font-size:42px;
    margin-bottom:20px;
}

textarea#title, #categories textarea {
    color:#fff;
}

textarea#title.empty, #categories textarea.empty {
    color:rgba(255,255,255, .5);
}


.table-cell.empty h3 {
	color:rgba(255, 255, 255, .2);
    /*opacity:.;*/
}

.table-row {
    /*border:1px solid red;*/
}

h3 {
	color:#ffff5f;
	color:#fff;
	text-align:center;
	font-size:20px;
	font-weight:bold;
}

textarea#title:hover,
#categories textarea:hover {
    background-color:#5b67cc !important;
}

textarea#title:focus,
#categories textarea:focus {
    background-color:#fff !important;
    color:#000 !important;
}

.modal-wrapper {
    background-color:rgba(0,0,0,.5);
    display:none;
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:2;
    height:100%; /* stupid safari */
}

.modal {
    position:relative;
    top:50%;
    /*left:50%;*/
    /*right:5%;*/
    transform:translate(0%, -50%);
    background-color:#ffffff;
    z-index:2;
    border-radius:5px;
    background-color:#efefef;
    overflow:auto;
    max-height:calc(100% - 50px);
    max-width:1000px;
    margin-left:auto;
    margin-right:auto;
}

#save {
    /*
    background-color:#ffff5d;
    border:none;
    font-weight:bold;
    width:50%;*/
    margin:auto;
    padding-left:30px;
    padding-right:30px;
}

#cancel {
    font-size:12px;
    color:#333;
    margin-left:20px;
}

#modal-title {
    border-top-left-radius:5px;
    border-top-right-radius:5px;
	background-color:#999;	
    color:#fff;
    font-size:18px;
    padding:5px;
}

#modal-inner {
    padding:20px;
}

.modal-close {
    float:right;
    cursor:pointer;
}

#other-modal {
    padding:20px;
}

#t1, #t2 {
    width:100%;
    display:block;
    height:200px;
    padding:10px;
    margin-bottom:0px;
    font-size:16px;
}

label {
    font-size:20px;
    line-height:1.3;
}

.input-tabs img {
    width:16px;
    padding-right:3px;
}

.tab-groups .tab {
    display:none;
}

.tab-groups .tab:first-child {
    display:block;
}

.input-tabs span {
    border:1px solid black;
    border-top:none;
    display:inline-block;
    margin-top:-1px;
    padding:3px;
    cursor:pointer;
}

.input-tabs .active {
    background-color:#fff;
}

.input-tabs span:hover {
    background-color:#fff;
}

.tab {
    border:1px solid black;
    background-color:#fff;
    padding:5px;
}

.tab textarea {
    border:none;
    padding:0px;
}

.image-drop-box {
    border:3px dashed black;
    padding:5px;
    width:100px;
    height:100px;
    text-align:center;
    display:inline-block;
}

.image-block {
    display:inline-block;
    width:100px;
    height:100px;
}

.image-drop-box svg {
    display:none;
    margin:auto;
}

.image-drop table {
    width:100%;
}

.image-drop td {
    vertical-align:middle;
}

.image-drop td:nth-child(2) {
    text-align:center;
    padding-left:20px;
    padding-right:20px;
}

.image-drop-box.over {
    background-color:#ffff00;
}

.image-drop-box.loading svg {
    display:block;
}

.image-drop-box.loading span {
    display:none;
}

.image-drop-box span {
    text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
    font-weight:bold;
}

.image-drop-box {
    background-size: contain;
    background-repeat:no-repeat;
    background-position: center;
} 

.trumbowyg-modal input {
    width:100%;
    margin-bottom:10px;
}

.trumbowyg-modal label#width input {
    width:50px;
    display:inline;
}
.trumbowyg-modal form {
    padding:10px;
}
.trumbowyg-modal label#height input {
    width:50px;
    display:inline;
}

.trumbowyg-modal label {
    font-size:16px;
}

.trumbowyg-box .trumbowyg-editor {
    background-color:white;
    padding:10px;
    font-size:16px;
}

.trumbowyg-box, .trumbowyg-editor {
    min-height:70px !important;
    margin-top:0 !important;
}


.fr-box .mathy:before {
    content: "ASCIIMATH=";
    background-color: black;
    padding: 2px;
    color: white;
    margin-right: 5px;
}

.fr-box .mathy {
    font-weight: bold;
    font-family: monospace;
    /* padding: 5px; */
    /* background-color: #000; */
    /* color: #fff; */
    text-align: center;
    /* transform: rotate(2deg); */
    display: inline-block;
    text-align: center;
    /* margin: auto; */
    /* margin-left: auto; */
    margin-right: auto;
    /* width: 12px; */
    border: 1px dotted black;
}

.trumbowyg-modal {
    z-index:100 !important;
    overflow:auto !important;
}

.trumbowyg-button-pane {
    background-color:#fff !important;
}

.trumbowyg-box, .trumbowyg-editor {
    margin-bottom:0 !important;
}

.left {
    width:calc(50% - 15px);
    margin-right:15px;
    float:left;
}

.right {
    width:calc(50% - 15px);
    margin-left:15px;
    float:right;
}

.row:after {
    content: "";
    display: table;
    clear: both; 
}


#instructions {
    text-align:center;
    max-width:50%;
    text-align:left;
    display:table-cell;
    vertical-align:middle;
}

#save-continue {
    vertical-align:middle;
    width:50%;
    text-align:right;
    display:table-cell;
}

#save-continue button:last-child {
    margin-left:50px;
    text-align:center;
}

#save-continue button {
    text-align:right;
    display:inline-block;
    margin-bottom:10px;
    margin-top:10px;
}

#other-modal {
    background-color:#fff;
}

#add-row, #add-column {
    background:transparent;
    border:none;
	color:#2a3698;	
    font-weight:bold;
}

#add-row:hover, #add-column:hover {
    text-decoration:underline;
}

#teams {
    position:absolute;
    bottom:0;
    text-align:center;
    left:0;
    right:0;
    z-index:11;
}

#teams .team {
    display:inline-block;
    margin-left:10px;
    margin-right:10px;
    border:1px solid white;
    padding:5px;
    background-color:white;
    border-top-left-radius:2px;
    border-top-right-radius:2px;
    min-width:100px;
}

#teams h3.name {
    border-bottom:2px solid black;
    text-align:center;
    color:black;
    display:inline-block;
}

#teams h3.points {
    background-color: #65c448;
    color: #fff;
}


.pointer span {
    display:inline-block;
    width:45%;
    color:white;
    font-size:30px;
    line-height:30px;
    cursor:pointer;
    background-color:white;
    font-family:monospace;
    font-weight:bold;
}

.pointer .plus {
    color:#2da94e;
}

.pointer .minus {
    color:#ff0000;
}

#gameplay {
    filter:blur(5px);
    height:100%; /* stupid firefox */
    width:100%;
    display:inline-block;
}

#options label {
    display:block;
}

#options select {
    font-size:22px;
    display:inline;
    height:40px;
}

#options input[type='button'] {
    font-size:22px;
    display:inline;
    height:40px;
}

#options a {
    color:white; 
    text-decoration:none;
}

#options a:hover {
    text-decoration:none;
}

@media (max-width: 768px) { 
    .left, .right {
        width:100%;
        float:none;
        margin-left:0;
        margin-right:0;
    }

    #modal {
        left:0;
        right:0;

    }

    #question-grid .table-cell-inner h3 {
        font-size:18px;
    }

    #question-title-wrapper span {
        display:block;
        margin-bottom:5px;
    }
}

.mathjax-preview {
    text-align:center;
}

.mathjax-help {
    font-size:12px;
}

.mathjax-preview-text {
    font-size:11px;
    margin-bottom:5px;
    text-align:center;
}

    html, body {
        overflow:hidden;
    }

    body {
        opacity:0;
    }

    #categories .table-cell {
        font-size:24px;
        text-align:center;
        color:#fff;
    }

    #question-grid .table-cell {
        cursor:pointer;
    }

    #question-grid .table-cell.empty {
        border-color:#000;
        background-color:rgba(0,0,0,0);
        cursor:auto;
    }

    .hide {
        display:none;
    }

    #categories .table-cell {
        vertical-align:bottom;
    }

    #categories {
        margin-top:20px;
    }

    #question-modal {
        transform-origin:top left;

    }

    #question-modal .modal {
        max-width:100%;
        margin-left:10px;
        margin-right:10px;
        max-height:90%;
    }

    #question-modal-table {
        width:100%;
    }

    #question-modal-table td {
        padding:5px;
        text-align:center;
    }

    #question-modal {
        background-color:#65c448;	
        border:3px solid #ffff00;;
        z-index:10;
    }

    .expanded {
        transition:.5s all ease; /*, .35s border-width step-end, 1s transform ease;*/
        border-width:0;
    }

    .modal, .modal2 {
        background-color:transparent;
        color:#fff;
        text-align:center;
    }

    .modal2 .modal-inner {
        overflow:auto;
        padding-left:20px;
        padding-right:20px;
    }

    .modal2 {
        width:100%;
    }

    #question-title-wrapper {
        padding:5px;
        text-align:center;
        color:#fff;
        background-color:#151b4b;
        z-index:3;
    }

    #question-title-wrapper td:nth-child(2) {
        white-space:nowrap;
        width:30%;
        text-align:center;
    }

    #question-title-wrapper td:nth-child(1) {
        width:33%;
    }

    #question-title-wrapper td:nth-child(3) {
        width:33%;
    }

    #question-title {
        font-weight:bold;
        padding-left:10%;
        padding-right:10%;
    }

    .question, .answer {
        margin:auto;
    }

    #question-modal .question {
        display:none;
        opacity:0;
    }

    #answer-button, #continue-button {
        cursor:pointer;
    }

    #question-modal .reveal {
        transition: max-height 2s ease, opacity 2s ease;
        opacity:1;
        display:block;
        border-top: 3px dotted white;
        margin-top: 10px;
        padding-top: 10px;
    }

    .mathy {
        background-color:transparent;
    }

    kbd
    {
        -moz-border-radius:3px;
        -moz-box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 2px #fff inset;
        -webkit-border-radius:3px;
        -webkit-box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 2px #fff inset;
        background-color:#f7f7f7;
        border:1px solid #ccc;
        border-radius:3px;
        box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 2px #fff inset;
        color:#333;
        display:inline-block;
        font-family:Arial,Helvetica,sans-serif;
        line-height:1.4;
        margin:0 .1em;
        padding:.1em .6em;
        text-shadow:0 1px 0 #fff;
    }

    #question-grid .question, #question-grid .answer {
        display:none;
    }

    #options {
        display:block;
    }

        @media print {
    
        #gameplay {
            filter:none;
        }

        .modal-wrapper {
            display:none !important;
        }

        #categories {
            margin-top:0;
        }

        #categories .table-cell-inner {
            border-bottom:2px solid black;
        }

        #teams, #options {
            display:none;
        }

        .table-row {
            display:table-row;
            width:100%;
        }

        .table-cell {
            display:table-cell;
            width:calc(100vw / 5) !important;
        }

        .table-cell-inner {
            font-size:14px !important;
        }

        #question-grid .question, #question-grid .answer {
            display:block;
        }

        #question-grid {
            display:table;
        }

        #question-grid img {
            max-height:100px;
            max-width:100px;
            width:auto;
            height:auto;
        }

        .answer {
            margin-bottom:5px;
            padding-bottom:5px;
            border-bottom:1px dotted black;
        }

        .table-cell-inner h3 {
            margin-top:0;
            margin-bottom:0;
            opacity:1 !important;
            font-size:16px;
        }

        .table-cell-inner {
            padding:10px;
        }

        .table-cell {
            color:#000 !important;
        }

        .table-cell-inner {
            text-align:center;
        }
    }

    @media print {
        .print-hide {
            display:none;
        }
    }