html, body {
    margin: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-user-select: none;
    image-rendering: pixelated;
    font-family: Arial;
}

@media screen and (min-width: 769px){

    #desktop-port {
        display: block;
    }

    #phone-port, #intro-modal {
        display: none;
    }
   
    button.selected {
        background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAG0lEQVQYV2P8/////4MHDzIwHjhw4L+9vT0DAHAFCj6esq3FAAAAAElFTkSuQmCC') repeat;
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
    }

    picture img {
        display: block;
    }

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

    .display-block {
        display: block;
    }

    .display-flex {
        display: flex;
    }

    .classic-border {
        border-color: rgb(212, 208, 200) rgb(128, 128, 128) rgb(128, 128, 128) rgb(212, 208, 200);
        border-style: solid;
        border-width: 2px;
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
    }

    .desktop {
        position: relative;
        width: 100%;
        height: 100vh;
        background: url('./img/wallpaper.jpg') no-repeat;
        background-size: cover;
    }

    .all-desktop-icons {
        display: flex;
        flex-direction: column;
        padding: 8px;
    }

    .desktop-icon {
        display: inline-block;
        width: 75px;
        height:  75px;
        text-align: center;
        white-space: normal;
    }

    .desktop-icon .icon-wrapper {
        border: 1px solid rgba(0, 0, 0, 0);
        width: 32px;
        height: 32px;
        position: relative;
        vertical-align: bottom;
        display: inline-block;
    }

    .desktop-icon .title {
        border: 1px solid rgba(0, 0, 0, 0);
        box-sizing: content-box;
        text-align: center;
        line-height: 13px;
        overflow: hidden;
        text-overflow: ellipsis;
        overflow-wrap: break-word;
        font-family: "MS Sans Serif", "Segoe UI", sans-serif;
        font-size: 8pt;
        background: rgb(58, 110, 165);
        color: white;
        display: flex;
        justify-content: center;
        max-height: calc(13px * 2);
        margin-top: 5px;
    }

    .desktop-icon .title.selected, .desktop-icon .icon-wrapper.selected {
        border: 1px dotted white;
    }

    .desktop-icon .title.selected {
        background-color: rgb(10, 36, 106);
    }

    .taskbar {
        position: absolute;
        display: flex;
        background-color: rgb(212, 208, 200);
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 27px; 
        flex-grow: 1;
        outline: 1px solid rgb(212, 208, 200);
        border-top: 1px solid rgb(255, 255, 255);
        background: rgb(212, 208, 200);
        color: #000;
        z-index: 5000;
    }

    .start-btn {
        margin: 2px;
        background-color: rgb(212, 208, 200);
        line-height: 14px;
        overflow: hidden;
        display: flex;
        flex-direction: row;
        align-items: center;
        outline: none;
        color: #000;
        position: relative;
        padding: 2px 4px;
        flex-shrink: 0;
    }


    .start-menu {
        position: absolute !important;
        left: 2px;
        bottom: 25px;
        width: calc(186px + 21px);
        height: 340px;
        max-height: calc(100vh - 26px);
        box-sizing: border-box;
        flex-direction: column;
        background-color: rgb(212, 208, 200);
        color: #000;
        z-index: 5001;
    }

    .start-menu .title {
        text-align: center;
    }

    .tab-divider {
        color: #fff;
        margin: 2px;
        margin-right: 0px;
        margin-left: 0px;
        border-left: 1px solid rgb(128, 128, 128);
        border-right: 1px solid rgb(255, 255, 255);
    }

    .all-tasks {
        display: flex;
        flex-direction: row;
        flex: 1 1 0%;
    }

    .taskbar-item {
        max-width: 200px;
        width: 50%;
        text-align: left;
        margin: 2px;
        line-height: 14px;
        padding: 2px;
        overflow: hidden;
        display: flex;
        flex-direction: row;
        align-items: center;
        outline: none;
        background-color: rgb(212, 208, 200);
        color: #000;
        position: relative;
        overflow: hidden;
    }

    .taskbar-item .icon {
        flex-basis: auto;
        flex-shrink: 0;
        flex-grow: 0;
        padding-right: 4px;
    }

    .taskbar-item .title {
        text-overflow: ellipsis;
    }

    .tray {
        margin: 2px;
        display: flex;
        flex-direction: row;
        line-height: 22px;
        box-sizing: border-box;
        vertical-align: middle;
        border-style: solid;
        border-width: 1px;
        border-color: rgb(128, 128, 128) rgb(255, 255, 255) rgb(255, 255, 255) rgb(128, 128, 128);
        background-color: rgb(212, 208, 200);
        color: #000;
    }

    .tray-icon-wrapper {
        display: flex;
        align-items: center;
        margin-left: 2px;
    }

    .tray img {
        margin-left: 1px;
    }

    .clock-time {
        font-size: 12px;
        text-align: center;
        width: 60px;
    }

    .alert-modal, .window-modal {
        contain: layout;
        flex-direction: column;
        background: rgb(212, 208, 200);
        background-color: rgb(212, 208, 200);
        padding: 2px;
        width: 400px;
        touch-action: none;
        z-index: 50;
        display: flex;
    }
    .alert-modal, .dash-container {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .dash-container {
        width: 85%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }

    #paint-window.window-modal {
        margin-top: 15px;
        height: 358px;
        width: 270px;
    }

    #paint-window.window-modal.photo-viewer {
        position: absolute;
        height: 500px;
        width: 700px;
        top: 50%;
        left: 50%;
        background-color: #fff;
        transform: translate(-50%, -50%);
    }

    #paint-window.window-modal.photo-viewer .photo-holder {
        overflow: auto;
        margin: 3px;
        display: flex;
        height: 460px;
        justify-content: center;
        align-items: center;
    }

    #word-window.window-modal {
        margin-top: -35px;
        height: 425px;
        width: 700px;
        overflow: hidden;
    }

    #explorer-window.window-modal {
        margin-top: 20px;
        height: 200px;
        width: 500px;
    }

    #explorer-window.window-modal.popup {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 400px;
        width: 600px;
    }

    .window-modal {
        z-index: 5;
    }

    .title-bar {
        image-rendering: pixelated;
        cursor: default;
        user-select: none;
        display: flex;
        flex-direction: row;
        align-items: center;
        white-space: nowrap;
        overflow: hidden;
        flex-shrink: 0;
        font-family: 'Segoe UI', sans-serif;
        font-size: 12px;
        height: 18px;
        font-weight: bold;
        background: linear-gradient(to right, rgb(10, 36, 106) 0%, rgb(192, 192, 192) 100%);
        color: #fff;
        touch-action: none;
    }

    .title-bar .title {
        position: relative;
        display: inline-block;
        flex: 1 1 0%;
        height: 16px;
    }
    .title-bar .title .title-text {
        font-family: 'Segoe UI', sans-serif;
        font-size: 12px;
        font-weight: bold;
        image-rendering: pixelated;
        cursor: default;
        user-select: none;
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        display: inline-block !important;
        margin: 0;
        padding: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        padding-left: 2px;
    }

    .all-bars {
        display: flex;
        flex-direction: column;
        padding: 1px;
        margin-top: 1px;
        margin-bottom: 5px;
        border: 1px solid rgb(128, 128, 128);
        box-shadow: 0 1px 0 rgb(128, 128, 128), 0 1px 0 #fff inset;
    }

    .menu-bar {
        display: flex;
        background: rgb(212, 208, 200);
        color: #000;
    }

    .menu-bar-drag {
        font-size: 10pt;
        image-rendering: pixelated;
        flex: 0 0 auto;
        width: 10px;
        box-sizing: border-box;
        align-self: stretch;
        position: relative;
    }

    hr {
        display: block;
        width: 0px;
        margin: 0;
        border: 0;
        border-left: 1px solid rgb(128, 128, 128);
        border-right: 1px solid #fff;
        margin-left: 2px;
        margin-right: 2px;
        height: 22px;
    }

    .menu-bar-drag::before {
        content: "";
        display: block;
        position: absolute;
        left: 2px;
        top: 2px;
        width: 4px;
        bottom: 1px;
        box-sizing: border-box;
        border: 1px solid;
        border-color: rgb(255, 255, 255) rgb(128, 128, 128) rgb(128, 128, 128) rgb(255, 255, 255);
        border-color: #fff rgb(128, 128, 128) rgb(128, 128, 128) #fff;
    }

    .menu-bar + .menu-bar {
        border-top: 1px solid #fff;
        box-shadow: 0px -1px 0px rgb(128, 128, 128);
        margin-top: 2px;
    }

    .menu-bar-item {
        color: #000;
        font-family: 'Segoe UI', sans-serif;
        font-size: 12px;
        box-sizing: border-box;
        height: 18px;
        line-height: 1;
        margin-top: 1px;
        margin-bottom: 1px;
        padding: 2px 5px;
        position: relative;
        outline: 0;
        background: rgb(212, 208, 200);
    }

    .menu-bar-item span{
        margin: 0;
        text-decoration: underline;
    }

    .menu-bar-item:hover, .word-icon:hover, .dropdown:hover,
    .menu-bar-item:active, .word-icon:active, .dropdown:active {
        box-shadow: 1px 1px 0 rgb(255, 255, 255) inset, -1px -1px 0 rgb(128, 128, 128) inset;
    }

    .menu-bar .dropdown {
        position: relative;
        background-color: #fff;
        font-family: 'Segoe UI', sans-serif;
        font-size: 12px;
        box-sizing: border-box;
        height: 18px;
        padding-left: 3px;
        margin-right: 5px;
        line-height: 16px;
    }

    .menu-bar .dropdown .dropdown-btn {
        display: inline-block;
        position: absolute;
        right: 1px;
        top: 1px;
        bottom: 1px;
        background-color: #D4D0C8;
    }

    .menu-bar #zoom.dropdown{
        width: 60px;
    }
    .menu-bar #typestyle.dropdown{
        width: 80px;
    }
    .menu-bar #fontname.dropdown{
        width: 130px;
    }
    .menu-bar #fontsize.dropdown{
        width: 45px;
    }

    .menu-bar .down-arrow {
        color: #000;
        padding-top: 3px;
        margin-left: -4px;
        width: 16px;
        height: 20px;
        vertical-align: middle;
        filter: drop-shadow(0px 1px 1px #fff);
    }

    .menu-bar .down-arrow.disabled {
        color: #7F7F7F;
        filter: drop-shadow(0px 1px 1px #fff);
    }

    .menu-bar.icon-menu-bar {
        align-items: center;
        height: 23px;
    }

    .window-titlebar-btn {
        display: block;
        width: 16px;
        height: 14px;
        padding: 0;
        margin: 2px;
        outline: none;
        background-color: rgb(212, 208, 200);
        color: #000;
        position: relative;
    }

    .window-titlebar-btn .window-titlebar-btn-icon {
        display: block;
        width: 12px;
        height: 10px;
        position: relative;
        pointer-events: none;
    }

    .window-titlebar-btn .window-titlebar-btn-icon::before {
        display: block;
        background-color: #000;
        content: "";
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        position: absolute;
        mask-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAKCAYAAADo3z3CAAAAoUlEQVRIS9VVWw7AIAib9z/0FpZgCOFRgpluf9MClhYdV++7gfDhYLxYDw+UyiHd5F8S5lr6zNa6Xpv/KwhHOahQpLB1+CwfycgYrwmE0WK8MTsIR1aOGsR+NYkkYzN5/pGwVA9xA/diq8LeHCKuQxQ+aoYt2yJWtpSNZth0edRpGVC5eGQcSg4hXLml3fdpBeHs8evWyPKX9ruXVqnYCeAHA8IyC9K2kmkAAAAASUVORK5CYII=');
        mask-position: calc(-3 * 13px - 1px) 0;
        -webkit-mask-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAKCAYAAADo3z3CAAAAoUlEQVRIS9VVWw7AIAib9z/0FpZgCOFRgpluf9MClhYdV++7gfDhYLxYDw+UyiHd5F8S5lr6zNa6Xpv/KwhHOahQpLB1+CwfycgYrwmE0WK8MTsIR1aOGsR+NYkkYzN5/pGwVA9xA/diq8LeHCKuQxQ+aoYt2yJWtpSNZth0edRpGVC5eGQcSg4hXLml3fdpBeHs8evWyPKX9ruXVqnYCeAHA8IyC9K2kmkAAAAASUVORK5CYII=');
        -webkit-mask-position-y: 0;
    }

    .window-titlebar-btn.minimize-btn .window-titlebar-btn-icon::before{
        -webkit-mask-position-x: calc(0 * 13px - 1px);
    }
    .window-titlebar-btn.maximize-btn .window-titlebar-btn-icon::before{
        -webkit-mask-position-x: calc(-1 * 13px - 1px);
    }
    .window-titlebar-btn.close-btn .window-titlebar-btn-icon::before{
        -webkit-mask-position-x: calc(-3 * 13px - 1px);
    }

    .alert-modal-content {
        color: #000;
        margin: 0;
        padding: 0;
        flex: 1;
        min-height: 0px;
        contain: layout paint;
        outline: none;
        text-align: center;
    }

    .alert-modal-content img {
        width: 32px;
        aspect-ratio: auto 32 / 32;
        height: 32px;
        image-rendering: pixelated;
        margin: 16px;
        display: block;
    }

    .alert-modal-content p{
        text-align: left;
        font-family: "MS Sans Serif", Arial, sans-serif;
        font-size: 14px;
        margin-top: 22px;
        flex: 1 1 1px;
        min-width: 0px;
        white-space: pre-wrap;
        overflow-wrap: break-word;
    }

    .alert-modal-content button {
        outline: none;
        background-color: rgb(212, 208, 200);
        position: relative;
        min-width: 75px;
        height: 23px;
        margin: 16px 2px;
    }

    .window-titlebar-btn:active:hover, .alert-modal-content button:active:hover {
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
    }

    .window-titlebar-btn:active:hover .window-titlebar-btn-icon {
        left: 1px;
        top: 1px;
    }

    paint-tool {
        overflow: hidden;
        display: flex;
        flex-direction: row;
        flex: 1 1 0%;
        background: rgb(212, 208, 200);
        justify-content: space-between;
    }

    paint-tool left-side {
        display: flex;
        flex: 0 0 auto;
        position: relative;
        flex-direction: column;
    }

    paint-tool tool-bar {
        height: 273px;
        align-items: center;
        padding-left: 4px;
        padding-right: 2px;
        flex-flow: column;
        display: flex;
    }

    paint-tool tool-bar tool-set {
        display: flex;
        flex-flow: row wrap;
        height: 200px;
        width: 50px;
    }

    paint-tool tool-bar tool-set tool-item {
        box-sizing: border-box;
        position: relative;
        display: block !important;
        margin: 0;
        padding: 0;
        width: 25px;
        height: 25px;
        border: 0;
        border-right: 1px solid rgb(64, 64, 64);
        border-bottom: 1px solid rgb(64, 64, 64);
        background: transparent;
        outline: 0;
    }

    paint-tool tool-bar tool-set tool-item.selected {
        padding-bottom: 2px;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        border-top: 1px solid rgb(64, 64, 64);
        border-left: 1px solid rgb(64, 64, 64);
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAAXNSR0IArs4c6QAAABtJREFUGFdj/P////+rF08yMF65cOK/tr45AwBy0QpqEkEwvQAAAABJRU5ErkJggg==");
    }
    paint-tool tool-bar tool-set tool-item.selected::before {
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        border-top: 1px solid rgb(128, 128, 128);
        border-left: 1px solid rgb(128, 128, 128);
        border-right: 1px solid rgb(212, 208, 200);
        border-bottom: 1px solid rgb(212, 208, 200);
    }

    paint-tool tool-bar tool-set tool-item::before {
        content: " ";
        position: absolute;
        z-index: 1;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
        border-right: 1px solid rgb(128, 128, 128);
        border-bottom: 1px solid rgb(128, 128, 128);
    }

    paint-tool tool-bar tool-set tool-item span {
        direction: ltr;
        user-select: none;
        image-rendering: pixelated;
        background-image: url("./img/tools.png");
        background-repeat: no-repeat;
        background-position: calc(-16px * 1) 0;
        display: block;
        position: absolute;
        left: 4px;
        top: 4px;
        width: 16px;
        height: 16px;
    }

    .tooltip {
        position: absolute;
        width: 300px;
        height: 45px;
        padding: 20px;
        display: none;
        background-color: rgb(255,255,226);
        border: 1px solid #000;
        border-radius: 10px;
        text-align: center;
        top: 300px;
        left: 400px;
        font-family: 'Segoe UI', sans-serif;
        font-size: 14px;
        white-space: normal;
    }

    paint-tool tool-bar tool-panel {
        display: flex;
        margin-top: 3px;
        width: 41px;
        height: 66px;
        box-sizing: border-box;
        border: 1px solid #fff;
        border-top-color: rgb(128, 128, 128);
        border-left-color: rgb(128, 128, 128);
    }

    paint-tool right-side {
        flex: 1 1 0%;
        overflow: hidden;
        padding: 3px;
        direction: ltr;
        display: block !important;
        color: #000;
        position: relative;
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
        border-color: rgb(128, 128, 128);
        border-style: solid;
        border-width: 2px;
        background-image: url('./img/hero.png');
        background-repeat: no-repeat;
        background-size: contain;
        background-color: #fff;
    }

    canvas#paint-canvas {
        width: 100%;
        height: 100%;
        overflow: hidden;
    }

    bottom-side {
        position: relative;
    }

    color-palette {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 47px;
        position: relative;
        margin-left: 3px;
    }

    color-palette::before {
        content: '';
        top: -2px;
        position: absolute;
        left: 0;
        right: 0;
        border-top: 1px solid rgb(128, 128, 128);
        border-bottom: 1px solid #fff;
        z-index: 0;
    }

    color-box {
        display: flex;
        flex-direction: row;
        height: 32px;
    }

    color-box active-color {
        position: relative;
        background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAAXNSR0IArs4c6QAAABtJREFUGFdj/P////+rF08yMF65cOK/tr45AwBy0QpqEkEwvQAAAABJRU5ErkJggg==");
        box-sizing: border-box;
        border-top: 1px solid rgb(128, 128, 128);
        border-left: 1px solid rgb(128, 128, 128);
        border-right: 1px solid rgb(212, 208, 200);
        border-bottom: 1px solid rgb(212, 208, 200);
        width: 30px;
        height: 31px;
    }

    color-box active-color prev-color, color-box active-color curr-color {
        position: absolute;
        display: flex;
        width: 15px;
        height: 15px;
        padding: 1px;
        border: 0;
        box-sizing: border-box;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
        border-right: 1px solid rgb(128, 128, 128);
        border-bottom: 1px solid rgb(128, 128, 128);
        margin-left: 1px;
    }

    color-box active-color curr-color::before,
    color-box active-color prev-color::before {
        left: 1px;
        top: 1px;
        right: 1px;
        bottom: 1px;
        content: '';
        position: absolute;
    }
    color-box active-color curr-color::after, 
    color-box active-color prev-color::after { 
        content: '';
        position: absolute;
        left: 0px;
        top: 0px;
        right: 0px;
        bottom: 0px;
        border: 1px solid rgb(212, 208, 200);
    }

    color-box active-color prev-color {
        right: 3px;
        bottom: 3px;
        background-color: #fff;
    }

    color-box active-color curr-color {
        top: 4px;
        left: 2px;
        background-color: #000;
    }

    all-colors {
        flex-flow: row wrap;
        display: flex;
        height: 32px;
        width: 224px;
    }

    palette-color { 
        position: relative;
        display: flex;
        padding: 0;
        box-sizing: border-box;
        width: 15px;
        height: 15px;
        border: 0;
        border-top: 1px solid rgb(128, 128, 128);
        border-left: 1px solid rgb(128, 128, 128);
        border-right: 1px solid rgb(212, 208, 200);
        border-bottom: 1px solid rgb(212, 208, 200);
        margin-left: 1px;
    }

    palette-color::before,
    color-box active-color::before {
        border-left: 1px solid rgb(64, 64, 64);
        border-top: 1px solid rgb(64, 64, 64);
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
    }

    palette-color::after,
    color-box active-color::after {
        content: '';
        position: absolute;
        left: -1px;
        top: -1px;
        right: -2px;
        bottom: -2px;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }

    .word-icon {
        width: 20px;
        height: 20px;
        margin: 0 2px;
    }
    .word-icon:nth-child(2) {
        margin-left: 5px;
    }

    .word-editor-wrapper {
        display: flex;
        flex-direction: column;
        border-image: url('data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E') 64 / 2px;
        border-color: rgb(128, 128, 128);
        border-style: solid;
        border-width: 2px;
        flex-grow: 1;
    }

    .ruler-wrapper {
        display: flex;
        align-items: center;
    }

    .ruler-wrapper .word-icon {
        flex-shrink: 0;
    }
    .ruler-wrapper .ruler, .word-editor-container .ruler{
        background-color: #fff;
        overflow:hidden;
        position: relative;
    }

    .ruler-vertical .ruler {
        width: 25px;
        display: flex;
        flex-direction: column;
    }

    .ruler-vertical .ruler .ruler-constrain {
        position: relative;
    }

    .ruler-wrapper .ruler {
        flex-grow: 1;
        margin-left: 30px;
        margin-right: 60px;
        height: 12px;
    }

    .word-editor-container .ruler-vertical {
        width: 12px;
        margin: 8px 8px 0px;
    }

    .ruler-wrapper .rulernumbers, .ruler-vertical .rulernumbers {
        font-size: 8pt;
        position: absolute;
        left: 0;
    }

    .ruler-vertical {
        display: flex;
        overflow: hidden;
    }

    .ruler-vertical .rulernumbers {
        writing-mode: tb-rl;
        transform: rotate(-180deg);
    }

    .indent {
        position: absolute;
        width: 50px;
        background-color: #7F7F7F;
    }
    .ruler-wrapper .right.indent {
        right: 0;
        width: 40px;
    }
    .ruler-wrapper .left.indent {
        left: 0;
    }
    .top.indent {
        left: 0;
        height: 20px;
    }

    .word-editor-container {
        display: flex;
        flex-grow: 1;
    }

    .editor-backdrop {
        display: flex;
        flex: 1 0 auto;
        background: #7F7F7F;
        overflow: hidden;
    }

    .editor-pane {
        display: flex;
        flex-direction: column;
        flex: 1 0 auto;
        border: 1px solid #000;
        margin: 10px 16px 0px;
        background-color: #fff;
        box-sizing: border-box;
        box-shadow: 2px 1px #000;
    }

    .editor-pane img {
        flex-grow: 0;
        width: 500px;
        margin: 20px 0px 0px 55px;
    }

    .editor-pane p {
        font-family: 'Times New Roman', serif;
        margin-left: 55px;
    }
    .editor-pane .intro {
        margin-bottom: 0;
    }

    .editor-pane .intro .seattle {
        font-family: 'Comic Sans', sans-serif;
    }
    .editor-pane .intro .love {
        color: #ff36ef;
    }
    .editor-pane .intro .spellcheck {
        border-bottom: 1px dotted #ff0000;
        padding:1px;
    }
    .editor-pane .intro .spellcheck em{
        border-bottom: 1px dotted #ff0000;
        font-style: normal;
    }

    .editor-pane .intro .spellcheck em:hover,
    .editor-pane .intro .spellcheck em:active {
        font-style: bold;
        outline: 1px solid #ff0000;
    }

    .editor-pane .outro {
        margin-top: 5px;
        margin-bottom: 0px;
    }

    .ex-icon-bar {
        font-size: 10pt;
        display: flex;
        flex-direction: row;
        align-items: center;
        overflow: hidden;
        position: relative;
        border-top: 1px solid #fff;
        box-shadow: 0px -1px 0px rgb(128, 128, 128);
        margin-top: 2px;
    }

    .standard-buttons {
        flex: 0 0 auto;
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    .big-btn {
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    .big-btn button.tool {
        width: 54px;
        height: 40px;
        box-sizing: border-box;
        padding: 0;
        font-size: 12px;
        line-height: 12px;
        display: flex;
        flex-direction: column;
        background-color: rgb(212, 208, 200);
        align-items: center;
        position: relative;
        outline: none;
        border-style: solid;
        border-width: 1px;
        border-color: transparent;
        color: rgb(128, 128, 128);
        text-shadow: 1px 1px 0px #fff;
    }

    .big-btn button.tool span {
        color: #000;
        margin-top: 24px;
    }
    .big-btn button.tool .icon {
        font-size: 12px;
        line-height: 12px;
        color: rgb(128, 128, 128);
        text-shadow: 1px 1px 0px #fff;
        width: 20px;
        height: 20px;
        position: absolute;
        top: 2px;
        background-image: url('./img/ui.png');
    }   

    .big-btn:hover button.tool .icon {
        background-image: url('./img/ui-color.png');
    }

    .address-bar {
        position: relative;
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
        border-color: rgb(128, 128, 128);
        border-style: solid;
        border-width: 2px 2px;
        background: #fff;
        color: #000;
        flex: 1;
        display: flex;
        margin-top: 1px;
        margin-bottom: 1px;
        align-items: center;
    }

    .address-bar img {
        margin-left: 2px;
    }

    .address-bar input {
        flex: 1;
        background: transparent;
        border: 0;
        outline: 0;
        padding: 0 0 0 4px;
        min-width: 0;
        width: 0;
    }

    .address-bar button {
        background-color: rgb(212, 208, 200);
        position: relative;
        border-color: rgb(212, 208, 200) rgb(128, 128, 128) rgb(128, 128, 128) rgb(212, 208, 200);
        border-style: solid;
        border-width: 2px 2px;
        border-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22256px%22%20height%3D%22256px%22%20viewBox%3D%220%200%20256%20256%22%3E%0A%09%09%09%0A%09%09%3Cpath%20d%3D%22M0%200h224v32h-192v192h-32v-224z%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M224%200h32v256h-256v-32h224v-224z%22%20fill%3D%22rgb(64%2C%2064%2C%2064)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M32%2032h160v32h-128v128h-32v-160z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M192%2032h32v192h-192v-32h160v-160z%22%20fill%3D%22rgb(128%2C%20128%2C%20128)%22%2F%3E%0A%09%09%3Cpath%20d%3D%22M64%2064h128v128h-128v-128z%22%20fill%3D%22rgb(212%2C%20208%2C%20200)%22%2F%3E%0A%09%0A%09%09%3C%2Fsvg%3E") 64 / 2px;
        color: rgb(128, 128, 128);
        text-shadow: 1px 1px 0px #fff;
        width: 17px;
        height: 19px;
        padding: 0;
    }

    #explorer-window .all-bars {
        margin-bottom: 2px;
    }

    .folder-content {
        display: flex;
        background-color: #fff;
        flex-grow: 1;
    }

    .folder-content .img-wrapper {
        text-align: center;
        display: inline-block;
        vertical-align: bottom;
        width: 32px;
        height: 32px;
        position: relative;
    }

    #explorer-window.window-modal.popup .folder-content .img-wrapper::after {
        content: '';
    }

    .folder-content .img-wrapper::after {
        content: url("./img/shortcut.png");
        position: absolute;
        left: 0;
        top: 0;
    }

    .folder-content .shortcut {
        font: 8pt/10pt 'verdana', sans-serif;
        cursor: pointer;
        color: #000;
        display: block;
        text-align: center;
        outline: none;
        -webkit-tap-highlight-color: rgba(0,0,0,0);
        width: 75px;
        height: 65px;
        margin-top: 10px;
        touch-action: none;
        white-space: normal;
    }

    .selected-file {
        background-color: rgb(10, 36, 106);
        color: #fff;
        border: 1px dotted #fff;
    }

    .crysis3 {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);;
        width: 616px;
        height: 353px;
        background-image: url('./img/crysis3-splash.jpg');
        background-size: cover;
        background-repeat: no-repeat;
        z-index: 20;
    }

    .crysis3 .progress-bar {
        position: absolute;
        box-sizing: border-box;
        bottom: 10%;
        width: 100%;
        background-color: #fff;
        height: 24px;
        border: 2px solid #000;
        animation: loaderFirst 3s;
    }

    @keyframes loaderFirst {
        0% {width: 0%}
        50% {width: 70%}
        100% {width: 100%}
    }

}

@media (orientation: portrait) {
    #word-window.window-modal {
        margin-top: 20px;
    }
}

@media screen and (max-width: 768px){
    
    #desktop-port, 
    #paint-window.window-modal.photo-viewer {
        display: none;
    }
    
    body  {
        background-color:darkslategrey;
    }

    #phone-port {
        display: flex;
        flex-direction: column;
    }

    #phone-port #game {
        flex-shrink: 0;
    }

    #phone-port #gamepad {
        display: flex;
        flex-grow: 1;
        flex-shrink: 0;
        justify-content: space-around;
    }

    #phone-port #gamepad #arrows {
        padding-top: 16px;
        touch-action: none;
    }

    #phone-port #gamepad button, 
    #phone-port #gamepad button span{
        width: 64px;
        height: 64px;
        font-family: 'VT323', monospace;
        padding: 8px;
        font-size: 32px;
        border: none;
        border-radius: 50%;
        background-color: #fff;
    }

    #phone-port #gamepad #arrows button {
        background-color: rgb(240, 196, 0);
    }

    #phone-port #gamepad #arrows .top,
    #phone-port #gamepad #arrows .bottom {
        display: inline-block;
        margin: 0px 64px;
    }

    #phone-port #gamepad #arrows .left,
    #phone-port #gamepad #arrows .right {
        display: inline-block;
    }

    #phone-port #gamepad #arrows .top {
        transform: rotate(180deg);
    }

    #phone-port #gamepad #arrows .left{
        transform: rotate(90deg);
    }

    #phone-port #gamepad #arrows .right{
        transform: rotate(270deg);
        margin-left: 64px;
    }
    #phone-port #gamepad #arrows img{
        width: 32px;
        height: 32px;
    }
    
    #phone-port #gamepad #ABbuttons{
        padding-top: 32px;
        color: #000;
        touch-action: none;
        text-align: center;
    }

    #phone-port #gamepad #ABbuttons .abutton, 
    #phone-port #gamepad #ABbuttons .bbutton{
        display: block;
        padding: 0;
    }

    #phone-port #gamepad button:active span{
        transform: translateY(-2px);
    }
    /* #phone-port #gamepad #arrows button:active{
        outline: 5px solid black;
    } */
    #phone-port #gamepad #ABbuttons .abutton{
        margin-top: 32px;
        width: 80px;
        height: 80px;
    }
    #phone-port #gamepad #ABbuttons .bbutton{
        border-radius: 4px;
        width: 60px;
        height: 20px;
        font-size: 15px;
        margin-top: -15px;
        margin-bottom: 15px;
    }

    #phone-port #gamepad button span {
        display: block;
        background: hsl(345deg 100% 47%);
        color: white;
        transform: translateY(-4px);
        padding: 0px;
    }

    #phone-port #gamepad #arrows button span {
        background: rgb(240, 196, 0);
    }

    #intro-modal {
        position: absolute;
        font-family: 'VT323', monospace;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 90%;
        height: calc(90%);
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: #fff1dd;
        border: 5px solid #aaa;
        image-rendering: auto;
        outline: 5px solid #333333;
    }

    #intro-modal .intro-pic {
        width: 70%;
        background-image: url(./img/hero4.png);
        background-repeat: no-repeat;
        background-size: contain;
        image-rendering: pixelated;
        background-position: center;
        height: 30%;
    }

    #hud {
        display: flex;
        background-color: #fff;
        justify-content: space-around;
        font-family: 'VT323', monospace;
        border: 4px solid #aaa;
        border-radius: 6px;
        align-items: center;
        margin: 4px 5px;
        flex-shrink: 0;
    }

    #hud #findOMeter {
        display: inline-block;
        font-size: 24px;
    }

    #hud #findOMeter.cold {
        display: inline-block;
        color: blue;
        font-size: 24px;
        font-weight: 700;
    }

    #hud #findOMeter.warm {
        display: inline-block;
        color: #ff7700;
        font-size: 24px;
    }

    #hud #findOMeter.hot {
        display: inline-block;
        color: #ff7700;
        text-shadow: 1px 1px #000;
        font-size: 24px;
        animation: hot-anim 2s;
        animation-iteration-count: infinite;
    }

    #hud #findOMeter.super-hot {
        display: inline-block;
        color: red;
        text-shadow: 1px 1px #000;
        font-size: 24px;
        animation: super-hot-anim 0.7s;
        animation-iteration-count: infinite;
    }

    @keyframes hot-anim {
        0% {color:#ff8400;}
        50% {color:red;}
        100%  {color:#ff8400;}
    }

    @keyframes super-hot-anim {
        0% {color:#000;}
        50% {color:red;}
        100%  {color:#000;}
    }

    #hud #keys {
        display: inline-block;
        background-image: url('./img/keys.png');
        background-position: -96px;
        width: 93px;
        height: 32px;
        background-repeat: no-repeat;
        text-align: center;
    }

    #hud p {
        display: inline-block;
        margin: 4px 0px;
        text-align: center;
    }

    #intro-modal .tutorial {
        white-space: normal;
        margin: 30px;
        font-size: 24px;
    }

    #intro-modal button.call-to-action {
        font-family: 'VT323', monospace;
        background: #881400;
        border-bottom: 6px inset rgba(0,0,0,.5);
        border-left: 6px inset rgba(0,0,0,.5);
        border-right: 6px inset rgba(255,255,255,.5);
        border-top: 6px inset rgba(255,255,255,.5);
        box-sizing: border-box;
        color: white;
        cursor: pointer;
        display: inline-block;
        font-size: 2.2rem;
        margin: 1rem;
        min-width: 200px;
        padding: .5rem;
        text-transform: uppercase;
        width: auto;
    }

    #intro-modal .social-buttons {
        display: none;
    }

    #intro-modal .social-buttons .social-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 8px;
    }

    #intro-modal .social-buttons .social-container img,
    #intro-modal .social-buttons .social-container a {
        display: block;
    }

    #intro-modal .social-buttons .social-container a {
        text-decoration: none;
        font-family: 'VT323', monospace;
        font-size: 20px;
        color: #000;
    }
}