/*
    CSS
    Content panels for Grammalecte
*/


/*
    Wrapper
*/
.grammalecte_wrapper {
    padding: 5px;
    border-radius: 3px;
    background-color: hsl(210, 50%, 50%);
    font-family: "Trebuchet MS", "Liberation Sans", sans-serif;
    color: hsl(210, 10%, 90%);
}

.grammalecte_wrapper_button {
    display: inline-block;
    padding: 0 5px;
    margin-left: 5px;
    background-color: hsl(210, 50%, 60%);
    border-radius: 2px;
    color: hsl(210, 0%, 96%);
    cursor: pointer;
}
.grammalecte_wrapper_button:hover {
    background-color: hsl(210, 50%, 55%);
    box-shadow: 0 0 1px 1px hsl(210, 50%, 20%);
    color: hsl(210, 0%, 100%);
}
.grammalecte_wrapper_toolbar {
    display: flex;
    justify-content: flex-end;
    margin-top: 5px;
    padding: 5px 10px;
}

/*
    Panels
*/
.grammalecte_panel {
    padding: 0;
    margin: 0;
    position: fixed;
    z-index: 100;
    border: 10px solid hsl(210, 0%, 0%);
    border-radius: 10px;
    background-color: hsl(210, 20%, 100%);
    color: hsl(210, 10%, 4%);
    font-family: "Trebuchet MS", "Liberation Sans", sans-serif;
    box-shadow: 0 0 4px 2px hsl(210, 0%, 50%);
}

.grammalecte_panel_bar {
    position: sticky;
    width: 100%;
    background-color: hsl(210, 0%, 90%);
    border-bottom: 1px solid hsl(210, 10%, 80%);
    font-size: 20px;
}
.grammalecte_panel_title {
    padding: 10px 20px;
}
.grammalecte_panel_label {
    display: inline-block;
    padding: 0 10px;
}

.grammalecte_panel_commands {
    float: right;
}
.grammalecte_move_button {
    display: inline-block;
    padding: 2px 5px;
    background-color: hsl(180, 80%, 50%);
    font-size: 22px;
    font-weight: bold;
    color: hsl(210, 0%, 100%);
    text-align: center;
    cursor: pointer;
}
.grammalecte_move_button:hover {
    background-color: hsl(180, 100%, 60%);
}
.grammalecte_close_button {
    display: inline-block;
    padding: 2px 10px;
    background-color: hsl(0, 80%, 50%);
    font-size: 22px;
    font-weight: bold;
    color: hsl(210, 0%, 100%);
    text-align: center;
    cursor: pointer;
}
.grammalecte_close_button:hover {
    background-color: hsl(0, 100%, 60%);
}

.grammalecte_panel_content {
    height: calc(100% - 45px); /* panel height - title_bar */
    overflow: auto;
}


/*
    Lexicographer
*/
#grammalecte_lxg_panel_content {
    padding: 10px;
}

.grammalecte_lxg_list_of_tokens {
    background-color: hsla(0, 0%, 90%, 1);
    padding: 10px;
    border-radius: 2px;
    margin: 10px 5px;
}

.grammalecte_token p {
    margin: 8px;
}
.grammalecte_token p.separator {
    margin: 20px 0;
    padding: 5px 5px;
    background-color: hsla(0, 0%, 75%, 1);
    color: hsla(0, 0%, 96%, 1);
    border-radius: 5px;
    text-align: center;
    font-size: 20px;
}
.grammalecte_token .token {
    margin: 8px;
}
.grammalecte_token ul {
    margin: 0 0 5px 40px;
}
.grammalecte_token b {
    background-color: hsla(150, 10%, 50%, 1);
    color: hsla(0, 0%, 96%, 1);
    padding: 2px 5px;
    border-radius: 2px;
    text-decoration: none;
}
.grammalecte_token b.WORD {
    background-color: hsla(150, 50%, 50%, 1);
}
.grammalecte_token b.ELPFX {
    background-color: hsla(150, 30%, 50%, 1);
}
.grammalecte_token b.UNKNOWN {
    background-color: hsla(0, 50%, 50%, 1);
}
.grammalecte_token b.NUM {
    background-color: hsla(180, 50%, 50%, 1);
}
.grammalecte_token b.COMPLEX {
    background-color: hsla(60, 50%, 50%, 1);
}
.grammalecte_token b.SEPARATOR {
    background-color: hsla(210, 50%, 50%, 1);
}
.grammalecte_token b.LINK {
    background-color: hsla(270, 50%, 50%, 1);
}
.grammalecte_token s {
    color: hsla(0, 0%, 60%, 1);
    text-decoration: none;
}
.grammalecte_token .textline {
    text-decoration: bold;
}

.grammalecte_token p.message {
    margin-top: 20px;
    padding: 10px 10px;
    background-color: hsla(240, 10%, 50%, 1);
    font-size: 18px;
    color: hsla(240, 0%, 96%, 1);
    border-radius: 3px;
    text-align: center;
}

/*
    Text Formatter
*/
#grammalecte_tf_options {
    display: flex;
    padding: 10px;
}
#grammalecte_tf_options .underline:hover {
    background-color: hsl(210, 10%, 86%);
    border-radius: 2px;
}
.grammalecte_tf_column {
    flex-grow: 1;
    width: 360px;
    padding: 0 5px;
}
#grammalecte_tf_options legend label {
    font-size: 20px;
    color: hsla(210, 20%, 50%, .8);
    font-weight: bold;
}
#grammalecte_tf_options fieldset {
    padding: 2px 10px 10px 13px;
    margin-bottom: 5px;
    background-color: hsl(210, 10%, 96%);
    border-color: hsl(210, 20%, 80%);
    border-radius: 3px;
}
#grammalecte_tf_options legend .option {
    margin: 7px 5px 0 4px;
    float: left;
}
#grammalecte_tf_options label {
    font-size: 13px;
}
#grammalecte_tf_options .grammalecte_tf_result {
    float: right;
    margin-right: 3px;
    font-size: 13px;
}

#grammalecte_tf_actions {
    background-color: hsl(120, 10%, 92%);
    padding: 15px;
    border-top: 1px solid hsl(120, 20%, 86%);
}

.grammalecte_button {
    display: inline-block;
    padding: 5px 10px;
    width: 100px;
    border-radius: 3px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}

#grammalecte_tf_reset {
    background-color: hsl(210, 100%, 50%);
    color: hsl(210, 0%, 100%);
}
#grammalecte_tf_progressbar {
    width: 250px;
}
#grammalecte_tf_time_res {
    width: 40px;
    padding: 5px 10px;
    width: 25px;
}
#grammalecte_tf_apply {
    background-color: hsl(150, 100%, 50%);
    color: hsl(150, 0%, 100%);
}

#grammalecte_progressbarbox {
    display: inline-block;
    padding: 10px 20px;
}
