/*
  Light: #f7fbfc
  Dark: #769fcd
  Mid 1: #d6e6f2
  Mid 2: #b9d7ea
  Offline: #999999
*/

html {
    height: 100%;
}

body {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-sans-serif;
    color: #020204;
}

canvas.backgroundLayer {
    background-color: #f7fbfc;
}

canvas.activeLayer {
    position: absolute;
    top: 0;
    left: 0;
}

body.calendar {
    background-color: #f7fbfc;
}

.hidden {
    display: none ! important;
}

#apple-sign-in-button, #apple-sign-out-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    position: fixed;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.5);

    z-index: 1;
}

#loading {
    margin: 32px auto 0 auto;
    text-align: center;
    font-size: 2em;
}

/* CANVAS */

canvas {
    box-sizing: border-box;
    display: block;
    margin: 0 auto;
    -webkit-tap-highlight-color: transparent;
    touch-action: none;
}

.control {
    background-color: #b9d7ea;

    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;

    height: 64px;
    padding: 0 1em;
    touch-action: none;
}

.control.ios-standalone {
    padding-bottom: 12px;
}

.control.sync {
    background-color: #769fcd;
}

.control.offline {
    background-color: #999999;
}

.back, .undo, .redo {
    color: #f7fbfc;
    height: 100%;
    position: relative;
}

.back svg, .undo svg, .redo svg {
    position: absolute;
    top: 20px;
    left: 20px;
    pointer-events: none;
}

.undo, .redo {
    display: inline-block;
    width: 32px;
}

.undo svg, .redo svg {
    left: 4px;
}

.control div {
    text-align: center;
}

.control .dd {
    text-align: center;
}

.control .my {
    text-align: center;
    font-size: 0.8em;
}

.control sup {
    font-size: 0.5em;
}

.control .history, .control .back {
    width: 64px;
    height: 100%;
    position: relative;
    text-align: right;
}

/* CALENDAR */

#logout {
    position: fixed;
    top: 0;
    right: 0;
    height: 32px;
    width: 32px;
    margin: 24px;
    background-color: rgba(255, 255, 255, 0.4);
}

#logout svg {
    pointer-events: none;
    position: absolute;
    top: 4px;
    left: 4px;
}

.month {
    padding-bottom: 1em;
}

.month h2 {
    padding: 0 0.75em;
    font-size: 1.75em;
    margin-bottom: 3em;
}

.month > table {
    width: 100%;
    text-align: center;
    border-collapse:collapse
}

.month > table > thead {
    font-weight: bold;
}

.month td {
    padding: 0.75em 0;
    margin: 0;
}

.month thead > tr > td {
    padding: 2px 0;
}

.month td:nth-child(7n + 6) > a, .month td:nth-child(7n + 7) > a {
    color: #828284;
}

.month tr:nth-child(n + 2) td {
    border-top: #cccccc 1px solid;
}

.month td > a {
    color: #020204;
    text-decoration: none;
}

.month td.busy {
    background-color: #b9d7ea;
}

.month td.active {
    border-bottom: #020204 2px solid;
}

.month td.active > a {

}

.month td.active.busy {

}
