﻿a {
    cursor: pointer;
}

body {
    font-family: Courier New, Courier, monospace;
    width: 100vw;
    height: 100vh;
}

#notification_bar {
    position: absolute;
    right: 0px;
    left: 0px;
    top: 0px;
    background-color: white;
    color: black;
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    z-index: 3000;
    padding: 10px;
    background-color: yellow;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.button_row-center {
    text-align: center;
    padding: 3px;
}


/* CORE STYLES */
a {
    color: #0028d2;
}

    a:hover {
        color: #001c93;
    }

ul {
    padding-right: 20px;
}

.page_title {
    font-size: 22px;
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
    text-align: center;
}

    .page_title.big {
        font-size: 30px;
    }

.sub_title {
    font-size: 18px;
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
}

.standard_box {
    padding: 10px;
    background-color: #999999;
    color: black;
    display: block;
}

.border {
    border: 1px solid #333333;
}

.thick_border {
    border: 2px solid #333333;
}

.border_top {
    border-top: 1px solid #333333;
}

.border_bottom {
    border-bottom: 1px solid #333333;
}

.standard_box.dark {
    background-color: #666666;
}

.standard_box.light {
    background-color: #cccccc;
}

.standard_box.thin_padding {
    padding: 5px;
}

.horizontal_spacer {
    display: inline-block;
    width: 10px;
}

.popover {
    padding: 3px;
    background-color: #999999;
    color: black;
    border: 1px solid #333333;
    border-radius: unset;
}

.box_group {
    margin: 5px;
    text-align: left;
}

.box_group-title {
    font-weight: bold;
    font-size: 16px;
}

.option_row {
    margin-left: 15px;
    margin-top: 2px;
    margin-bottom: 2px;
}

    .option_row input[type=checkbox] {
        margin: 0px;
        position: relative;
        top: 2px;
    }

.label {
    color: black;
    font-size: 14px;
    font-weight: bold;
    padding: 0;
}

.explanation_text {
    font-size: 12px;
}

/* MENU BUTTONS */

.menu-button {
    font-family: Courier New, Courier, monospace;
    background-color: #cccccc;
    border: 1px solid;
    border-color: transparent;
    text-decoration: none;
    cursor: pointer;
    font-size: 14px;
    color: black;
    text-align: center;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 3px 6px 3px 6px;
    display: inline-block;
}

    .menu-button.big {
        font-size: 18px;
    }

    .menu-button:hover {
        border-color: black;
        text-decoration: none;
        color: black;
        font-weight: bold;
    }

    .menu-button[disabled] {
        text-decoration: line-through;
    }

        .menu-button[disabled]:hover {
            border-color: transparent;
            font-weight: normal;
        }


/* MAIN MENU */
.menu_center {
    width: 100vw;
    height: 100vh;
    text-align: center;
    position: absolute;
}

.menu-box {
    margin-left: auto;
    margin-right: auto;
    display: inline-block;
    text-align: left;
}

.menu-title {
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
    text-align: center;
}

.menu-help-button {
    display: inline-block;
    border: 1px solid black;
    background-color: darkgrey;
    border-radius: 10px;
    padding-right: 3px;
    padding-left: 3px;
    color: lightgray;
    cursor: pointer;
    text-decoration: none;
}

    .menu-help-button:hover {
        color: black;
        text-decoration: none;
    }

/* LAUNCH PAGE */
.launch_page {
    margin-top: 15vh;
    width: 364px;
}

/* CUSTOM GAME PAGE */
.custom_game_page {
    margin-top: 10vh;
    width: 630px;
}

.custom_game_page-bottom_row {
    margin-top: 10px;
    text-align: center;
}

.custom_game_page-top_row {
    text-align: center;
}

.custom_game_page-left_column {
    display: inline-block;
    height: 468px;
}

.custom_game_page-right_column {
    display: inline-block;
    float: right;
    height: 462px;
}

.custom_game_page-mission-description {
    width: 280px;
    height: 120px;
}

.custom_game_page-point_sum {
    float: right;
}

    .custom_game_page-point_sum.invalid {
        color: red;
        font-weight: bold;
        float: right;
    }

.custom_game_page-listbuilder_title {
    display: inline-block;
}

.custom_game_page .listbuilder-container {
    height: 371px;
    width: 285px;
}

.custom_game_page-validation_message {
    text-align: center;
    color: red;
    font-weight: bold;
}

/* DIALOGS */
.modal-backdrop {
    background-color: rgba(64, 64, 64, 0.4);
}

.menu-dialog-box {
    z-index: 2000;
    position: fixed;
    top: 23vh;
    right: 45vw;
}

.menu-dialog-header {
    border-bottom: 1px solid black;
}

.menu-dialog-title {
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
    text-align: center;
    font-size: 16px;
}

.menu-dialog-body {
    text-align: left;
    margin-top: 5px;
    margin-bottom: 5px;
}

.menu-dialog-row label {
    font-family: Courier New, Courier, monospace;
    font-weight: bold;
    cursor: pointer;
    margin-right: 20px;
}

.menu-dialog-row input[type="radio"] {
    position: relative;
    top: 2px;
}

.menu-dialog-row-cost {
    font-family: Courier New, Courier, monospace;
    float: right;
    font-weight: bold;
    position: relative;
    top: 3px;
    margin-right: 6px;
}

.menu-dialog-row-details {
    float: right;
}

.menu-dialog-footer {
    border-top: 1px solid black;
    padding-top: 5px;
    text-align: center;
}

.menu-dialog-box.galpedia-dialog {
    z-index: 3000;
    position: fixed;
    top: 10vh;
    right: 30vw;
    width: 757px;
}

.sound_button {
    display: inline-block;
    position: absolute;
    z-index: 2000;
    background: url("images/ui/icon_sound_on.png");
    width: 32px;
    height: 32px;
    top: 30px;
    right: 30px;
}

    .sound_button.sound_off {
        background: url("images/ui/icon_sound_off.png");
    }

/* LOGIN DIALOG */
.login_dialog-security_warning {
    text-decoration: underline;
    font-weight: bold;
}

.login_dialog input {
    width: 100%;
}

/* USERNAME DISSPLAY */
.username_row {
    text-align: center;
    font-size: 11px;
    margin-bottom: 10px;
}

/* LISTBUILDER */

.listbuilder {
    text-align: left;
}

.listbuilder-container {
    background-color: white;
    height: 358px;
    font-size: 11px;
    overflow-y: auto;
}

.listbuilder-roster_group {
    margin-left: 15px;
}

.listbuilder-ship {
    margin-bottom: 5px;
}

.listbuilder-add_link {
    text-decoration: underline;
    cursor: pointer;
}

.listbuilder-remove_link {
    float: right;
    cursor: pointer;
}

.listbuilder-weapon {
    margin-left: 20px;
}

.listbuilder-upgrade {
    margin-left: 20px;
}

/* FLEET EDITOR */
.fleet_editor {
    margin-top: 20vh;
}

.fleet_editor-bottom_row {
    margin-top: 10px;
    clear: both;
}

.fleet_editor-error {
    font-weight: bold;
    color: red;
}

.fleet_editor-fleet_list {
    background-color: white;
    overflow-y: auto;
    height: 320px;
}

.fleet_editor-fleet_row {
    padding: 2px 5px;
    border-bottom: 1px solid #a09f9f;
}

    .fleet_editor-fleet_row.even {
        background-color: white;
    }

    .fleet_editor-fleet_row.odd {
        background-color: #e1e1e1;
    }

.fleet_editor-fleet_row-action {
    float: right;
}

.fleet_editor-fleet_row-header {
    font-weight: bold;
}

.fleet_editor-fleet_row-footer {
    font-size: 11px;
}

/* FLEET EDITOR DIALOG */
.fleet_editor-fleet_name_input {
    width: 90%;
    text-align: center;
    margin-bottom: 5px;
}

.fleet_editor .listbuilder-roster_group {
    margin-left: 0px;
}

.fleet_editor-point_sum {
    float: right;
    text-align: right;
    min-width: 80px;
    margin-left: 5px;
}

    .fleet_editor-point_sum.invalid {
        color: red;
        font-weight: bold;
    }

.fleet_editor .listbuilder {
    margin-bottom: 10px;
}

/* GALPEDIA */
.galpedia-window {
    width: 730px;
    margin-top: 10vh;
}

.galpedia-sidebar {
    min-height: 300px;
    overflow-y: auto;
    width: 200px;
    height: 69vh;
    text-align: left;
    display: inline-block;
}

.galpedia-body {
    float: right;
    display: inline-block;
    width: 502px;
    height: 69vh;
    overflow-y: auto;
}

.galpedia-bottom_row {
    margin-top: 15px;
    text-align: center;
}

.galpedia-section .header {
    font-weight: bold;
    display: block;
}

.galpedia-section .entry {
    display: block;
    margin-left: 10px;
}

.galpedia-image-box {
    text-align: center;
    padding: 10px;
}

.galpedia-statblock-group {
    padding: 5px;
    display: inline-block;
}

.game_overcontainer {
    display: flex;
    background-color: black;
    overflow: hidden;
}

#game_div {
    height: 100vh;
    width: 100vw;
}

    #game_div.sidebar_open {
        cursor: pointer;
    }

.credits-window {
    margin-top: 20vh;
}

.confirm_dialog {
    right: 37vw;
}

/* SPACEGAME UI */
.spacegame_ui {
    position: absolute;
    width: 548px;
    /*height: 275px;*/
    text-align: left;
    font-size: 14px;
    font-family: Courier New, Courier, monospace;
    font-weight: normal;
}

    .spacegame_ui .label {
        font-weight: bold;
    }

    .spacegame_ui .shipname {
        font-size: 18px;
        font-weight: bold;
        text-align: center;
    }

    .spacegame_ui .ship_stat_column {
        display: inline-block;
        width: 115px;
    }

    .spacegame_ui .control_group {
        display: inline-block;
        height: 252px;
        width: 260px;
    }

    .spacegame_ui .standard_box {
        margin-bottom: 10px;
    }

    .spacegame_ui .ship_info {
        width: 100%;
    }

    .spacegame_ui .shiplist {
        height: 25%;
        overflow-y: auto;
    }

    .spacegame_ui .shiplist_entry {
        display: block;
        margin-bottom: 5px;
        height: 30px;
    }

        .spacegame_ui .shiplist_entry.active {
            background-color: #cccccc;
        }

    .spacegame_ui .shiplist_entry-text {
        padding-top: 5px;
        padding-left: 10px;
        display: inline-block;
    }

    .spacegame_ui .shiplist_entry-icon {
        float: right;
        margin-right: 5px;
    }

    .spacegame_ui .ability_button {
        cursor: pointer;
        position: relative;
    }

    .spacegame_ui .ability_button-overlay {
        position: absolute;
        left: 0px;
        top: -5px;
    }

    .spacegame_ui .manuver_table_container {
        border-collapse: separate;
    }

    .spacegame_ui .manuver_cell {
        display: inline-block;
        height: 25px;
        width: 25px;
        padding: 0;
        outline: 2px solid #999999;
        margin: 2px;
    }

        .spacegame_ui .manuver_cell.selected {
            outline-color: #00FF00;
        }

        .spacegame_ui .manuver_cell.green {
            background-color: #00FF00;
        }

        .spacegame_ui .manuver_cell.white {
            background-color: #FFFFFF;
        }

        .spacegame_ui .manuver_cell.red {
            background-color: #FF0000;
        }

    .spacegame_ui .ability_description {
        padding-top: 10px;
    }

    .spacegame_ui .ship_status_row {
        height: 32px;
        width: 100%;
        text-align: center;
    }

        .spacegame_ui .ship_status_row .focused,
        .spacegame_ui .ship_status_row .focused .label {
            color: #00FF00;
        }

        .spacegame_ui .ship_status_row .stressed,
        .spacegame_ui .ship_status_row .stressed .label {
            color: #FF0000;
        }

    .spacegame_ui .menu-button.ship_is_done {
        color: #00a700;
        border-color: #00a700;
    }

    .spacegame_ui .briefing_portrait {
        width: 100px;
        height: 100px;
        background: #000000;
        float: left;
        margin-right: 10px;
        margin-bottom: 10px;
    }

    .spacegame_ui .results {
        min-height: 156px;
    }

.spacegame_ui_menu-buttons {
    position: absolute;
    right: 0;
}

.spacegame_ui_ship-list {
    position: absolute;
    left: 553px;
}

    .spacegame_ui_ship-list .menu-button {
        display: block;
        margin-bottom: 5px;
    }

        .spacegame_ui_ship-list .menu-button.ship_is_done {
            color: #00a700;
            border-color: #00a700;
        }

.small_icon {
    display: inline-block;
    height: 30px;
    width: 30px;
    background: url(../images/ui/icons.png);
}

    .small_icon:hover {
        background-position-x: 30px;
    }

.center_icon {
    background-position-y: -30px;
}

.done_icon {
    background-position-y: 0;
}

    .done_icon.is_done {
        background-position-y: -60px;
    }

.locked_icon {
    background-position-y: -90px;
}

.icon_button_row {
    height: 30px;
    padding: 0;
    margin-bottom: 10px;
}

/* MUTE MENU BUTTON */
.menu_mute_button {
    position: absolute;
    right: 10px;
    top: 10px;
    height: 32px;
    width: 32px;
    cursor: pointer;
    background-image: url("../images/ui/icon_sound_on.png");
}

    .menu_mute_button.muted {
        background-image: url("../images/ui/icon_sound_off.png");
    }

/* EPISODES PAGE*/
.episode-page {
    margin-top: 15vh;
    width: 500px;
    max-height: 77vh;
    overflow-y: scroll;
}

    .episode-page .briefing_map {
        width: 300px;
        height: 300px;
        margin-left: 76px;
    }

    .episode-page .briefing_text {
        text-indent: 30px;
    }

    .episode-page .briefing_portrait {
        width: 100px;
        height: 100px;
        background: #000000;
        float: left;
        margin-right: 10px;
        margin-bottom: 10px;
    }

    .episode-page .briefing_fleet-container {
    }

    .episode-page .briefing_fleet-entry {
        margin: 5px;
        display: inline-block;
        width: 210px;
        height: 200px;
    }

    .episode-page .done_icon {
        position: relative;
        top: 8px;
    }

        .episode-page .done_icon:hover,
        .episode-page .locked_icon:hover {
            background-position-x: 0;
        }
