﻿

.icon_button {
    cursor: pointer;
    padding: 0.2rem 0.5rem;
    border-width: 1px;
    border-color: rgba(0,0,0,0);
    border-radius: 0.8rem;
}

    .icon_button:hover {
        border-width: 1px;
        border-color: darkviolet;
    }

    .icon_button:active {
        background-color: lightgray;
    }
     
       
.icon-preview div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.2rem;
    width: 100px;
}

.icon-preview span {
    font-size: 0.75rem;
}


.image_clickable_hover {
    cursor: pointer;
    padding: 1px 1px;
}

    .image_clickable_hover:hover {
        transform: scale(1.04);
    }

.menu_button {
    cursor: pointer;
    border-radius: 10px;
    padding: 8px;
}

    .menu_button:hover {
        background-color: aliceblue;
        text-decoration: underline;
    }

.menu_button1 {
    cursor: pointer;
    
}

    .menu_button1:hover {
        background-color: aliceblue;
    }

.menu_selected_button {
    cursor: pointer;
    border-radius: 10px;
    padding: 8px;
}


.line_hoverable_aliceblue {
    border-radius: 8px;
    padding: 6px;
}

    .line_hoverable_aliceblue:hover {
        background-color: aliceblue !important;
    }

.line_hoverable_gray {
    border-radius: 8px;
    padding: 6px;
}

    .line_hoverable_gray:hover {
        background-color: whitesmoke !important;
    }

.numberCircle {
    border-radius: 50%;
    width: 26px;
    height: 26px;
    padding: 4px;
    background: whitesmoke;
    text-align: center;
    font-weight: bold !important;
}

.item_editable_hover {
    padding: 2px;
    border-radius: 6px;
}

    .item_editable_hover:hover {
        background-color: whitesmoke;
    }

.item_editable_hover_opacity {
    padding: 2px;
    border-radius: 6px;
}

    .item_editable_hover_opacity:hover {
        background-color: rgba(245, 245, 245, 0.21);
    }

.text_link{
    cursor: pointer;
    color:blue;
}

    .text_link:hover {
        text-decoration: underline;
    }

.text_link_selected {
    cursor: pointer;
    font-weight: bold;
}

.text_button {
    cursor: pointer;
    border-radius: 10px;
    padding: 3px;
    background-color: white;
}

    .text_button:hover {
        background-color: whitesmoke;
        color: rgba(89,74,226,1);
        font-weight: bold;
    }

.page-link {
    color: deepskyblue;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    font-weight: bold;
    font-size: 1.2rem;
}

    .page-link:hover {
        color: deeppink;
        text-decoration: underline;
        background-color: transparent;
        border-color: transparent;
    }

.chat-message-hover {
    border: solid;
    border-width: 1px;
    border-radius: 10px;
    border-color: rgba(255, 255, 255, 0);
}

    .chat-message-hover:hover {
        border: solid;
        border-width: 1px;
        border-color: darkslategray;
    }

.chat-message-seleced {
    border: solid;
    border-width: 1px;
    background-color: darkslategray;
    border-radius: 10px;
}

.image_left_rounded {
    border-radius: 5px 0px 0px 5px;
}

.image_top_rounded {
    border-radius: 5px 5px 0px 0px;
}

.repository-flag {
    
    height: 40px;
    position: relative;
    
    text-align: center;
    vertical-align: central;
    cursor: pointer;
}


.app_quadrat {
    cursor: pointer;
}

    .app_quadrat:hover {
        
        transform: scale(1.02);
    }

.app_quadrat_graysacle {
    -webkit-filter: grayscale(1);
}

.app_quadrat_preview {
    cursor: pointer;
}

    .app_quadrat_preview:hover {
        transform: scale(2.8);
    }

.app_quadrat_largescale {
    cursor: pointer;
}

    .app_quadrat_largescale:hover {
        transform: scale(1.08);
    }

.png_shadowed {
    -webkit-filter: drop-shadow(3px 3px 4px #777);
    filter: drop-shadow(3px 3px 4px #777);
}

.png_shadowed_lite {
    -webkit-filter: drop-shadow(1px 1px 2px #222);
    filter: drop-shadow(1px 1px 2px #222);
} 

.handle_style {
    opacity: 0.9;
}

    .handle_style:hover {
        transform: scale(1.4);
        opacity: 1;
    }

.transparent_button_style {
    opacity: 0.75;
} 

    .transparent_button_style:hover {
        opacity: 1;
    }

.parent_child_hover_visible:not(:hover) .child_hover_visible {
    display: none;
}

.grab {
    cursor: grabbing;
    cursor: grabbing;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

.grab:active {
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}

.sizer_right {
    cursor: e-resize;
}
 
    .sizer_right:active {
        cursor: e-resize;
    } 

.text_shadow {
    text-shadow: 0 2px 2px rgba(0,0,0,0.5);

}

.theater_element_circle {
    aspect-ratio: 1/1;
    -moz-border-radius: 900px;
    -webkit-border-radius: 900px;
    border-radius: 900px;
    overflow: clip;
    border-width: 2px;
} 

.theater_element_circle_background { 
    -moz-border-radius: 900px;
    -webkit-border-radius: 900px;
    border-radius: 900px;
    top: 27px;
    left: 27px;
    right: 27px;
    bottom: 27px;
    position: absolute;
    background: linear-gradient(rgba(0,0,0,0.7) 30%, rgba(0,0,0,0) 80%);
    z-index:-100;
}

.theater_element_circle_text {
    aspect-ratio: 1/1;
    -moz-border-radius: 900px;
    -webkit-border-radius: 900px;
    border-radius: 900px;
    color: white;
} 


.handle_romb {
    width: 12px;
    height: 12px;
    border-width: 2px;
    /* Rotate */
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.handle_rect {
    width: 10px;
    height: 10px;
    border-width: 2px;
    background: none;
}

.handle_circle {
    width: 10px;
    height: 10px;
    background: none;
    border-width: 1px;
    /* Rotate */
    -moz-border-radius: 900px;
    -webkit-border-radius: 900px;
    border-radius: 900px;
}

.selector_rect {
    border: dashed;
    border-width: 1px;
    border-color: cornflowerblue;
    background: rgba(100,100,120,0.5);
    border-radius: 8px; 
}

.select_object_highlite {
    background: rgba(100,100,120,0.4);
}



.stl-viewer-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.stl-viewer-canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    aspect-ratio: 1/1; 
}


.mermaid-container {
    min-height: 200px;
    background: white;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
}
   
.mermaid-error {
    color: #dc3545;
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    padding: 0.75rem;
    border-radius: 0.25rem;
    font-family: monospace;
}

    .mermaid-error pre {
        white-space: pre-wrap;
        margin: 0.5rem 0 0 0;
    }


.hr-vertical {
    width: 4px;
    height: 35px;
    display: inline-block;
    border: none;
    background-color: black;
    border-radius: 2px;
} 