    table.calendar{
    border-collapse:collapse;
    width:100%;
    }
    
    table.calendar thead{
    background-color:#5a5a5a;
    color:#fff;
    margin-bottom:3px;
    border-bottom:2px solid #fff
    }
    
    table.calendar thead th{
    font-weight:lighter;
    padding:10px 3px
    }
    
    table.calendar thead th.bolder{
    font-weight:700
    }
    
    table.calendar tbody{
    font-size:.8em
    }
    
    table.calendar td{
    text-align:center;
    padding:8px;
    cursor:pointer;
    border:1px solid hsla(0,0%,73%,.13);
    min-width:15px
    }
    
    table.calendar tr:last-child td{
    border-bottom:none
    }
    
    table.calendar td.month-name{
    font-weight:700;
    text-align:left;
    cursor:default;
    border-left:none
    }
    
    table.calendar td.next-month,table.calendar td.prev-month{
    color:transparent;
    cursor:default;
    pointer-events:none
    }
    
    table.calendar td.week-separator{
    pointer-events:none;
    padding:0;
    width:8px;
    min-width:0
    }
    
    table.calendar td.winter{
    background-color:rgba(159,220,249,.32)
    }
    
    table.calendar td.spring{
    background-color:hsla(99,54%,63%,.32)
    }
    
    table.calendar td.summer{
    background-color:rgba(255,232,91,.32)
    }
    
    table.calendar td.autumn{
    background-color:rgba(246,151,60,.32)
    }
    
    table.calendar td.holidays{
    font-weight:700;
    color:red;
    text-decoration:underline
    }
    
    table.calendar td.weekend{
    font-style:italic;
    font-weight:700;
    background-color:rgb(226, 226, 226);
    }
    
    table.calendar td.bolder{
    font-weight:700
    }
    
    table.calendar td.winter.range,table.calendar td.winter.selected{
    background-color:#9fdcf9;
    font-weight:700
    }
    
    table.calendar td.spring.range,table.calendar td.spring.selected{
    background-color:#91d46e;
    font-weight:700
    }
    
    table.calendar td.summer.range,table.calendar td.summer.selected{
    background-color:#ffe85b;
    font-weight:700
    }
    
    table.calendar td.autumn.range,table.calendar td.autumn.selected{
    background-color:#f6973c
    }
    
    div.calendar-controls{
    margin:5px auto;
    display:table;
    font-size:25px;
    line-height:35px
    }
    
    div.calendar-controls div{
    display:inline
    }
    div.calendar-controls .current-year{
    margin:0 30px
    }
    
    div.calendar-controls .control{
    font-weight:bolder;
    color:#323232;
    font-size:.8em;
    cursor:pointer
    }
    
    div.calendar-controls .today{
    position:absolute;
    right:15px;
    line-height:35px;
    font-size:.6em;
    text-transform:uppercase
    }
    
    div#calendar{
    position:relative;
    overflow:hidden;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
    }
    
    div#root{
    display:table;
    margin:50px auto
    }
    h2,h3,h4,h5{
    color:#404040
    }
    h1,h2,h3,h4,h5{
    text-align:center
    }
    
    a,h1{
    color:#b10909
    }
    
    a{
    font-weight:bolder;
    text-decoration:none
    }
    
    a.demoLink{
    text-decoration:underline
    }
    
    div.options{
    border:1px solid #b9b9b9;
    border-radius:5px;
    padding:10px 15px;
    margin-top:30px
    }
    
    div.options select{
    margin-left:10px
    }
    div.options .half{
    width:48%;
    display:inline-table
    }
    
    div.options textarea{
    height:320px;
    width:100%;
    resize:vertical;
    padding:5px
    }
    
    div.options textarea.error{
    border-color:darkred;
    -webkit-box-shadow:darkred 0 0 5px inset;
    box-shadow:inset 0 0 5px darkred
    }
    
    div.options .half a{
    font-size:.7em;
    margin-left:10px
    }
    
    p.interactiveDemo{
    font-style:italic
    }
    
    p.interactiveDemo i{
    background-color:#e2e2e2;
    font-style:normal;
    font-family:monospace;
    padding:2px 5px
    }
    
    