/* Reset to Bootstrap defaults */

:root {
    --palette-selected: #42b0f5;
    --unified-hover-bg: rgba(0, 0, 0, 0.7);
    --btn-bg: rgba(0, 0, 0, 0.48);
    --btn-bg-hover: rgba(255, 0, 0, 0.7);
    --btn-text: #ffffff;
    --btn-border: 0px;
    --btn-active-bg: rgba(255, 255, 255, 0.48);
    --btn-active-text: #000000;
    --btn-hover-bg: rgba(0, 0, 0, 0.6);
}

body {
  font-family: "Work Sans", sans-serif;
}

label{
    text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.2);
}

/* Resizer Divider */
#drag-divider {
    width: 3px;
    background-color: #dee2e6; /* Bootstrap border color approx */
    cursor: col-resize;
    flex-shrink: 0;
    transition: background-color 0.2s;
}

/* Toolbar Icons */
.ButtonEditImg {
    width: 32px; 
    height: 32px;
    margin-top: -4px; 
    margin-left: -4px; 
}

#btn-record-icon{
    margin-top: 0px;
}

#colorContainer{
    margin-top: 10px;
}

#addSubtractContainer{
    margin-top: 10px;
}

#slidersContainer{
    margin-top: 10px;
}

.unified-hover:hover{
    background-color: var(--unified-hover-bg) !important;
}

.outline-hover {
    border: 1px solid transparent;
    border-radius: 4px;
    padding: 2px;
}
.outline-hover:hover {
    border-color: currentColor;
    background-color: transparent !important;
}

/* Revert to white on hover/active/selected */
.btn:hover .ButtonEditImg,
.btn:active .ButtonEditImg,
.btn.active .ButtonEditImg,
.btn.selected .ButtonEditImg {
    filter: none;
}

/* Support .selected class from sculpt.js to match Bootstrap's .active style */
.btn.selected,
.btn.active,
.toolButton.selected,
.btnAddSub.active {
    color: var(--btn-active-text) !important;
    background-color: var(--btn-active-bg) !important;
    border-color: var(--btn-active-bg) !important;
}

.btnWithImg{
    padding: 1px;
    height: 32px;
}

.buttonImg{
    width: 32px; 
    height: 32px;
    margin-top: -1px; 
}

#btn-new-creation{
    width: 118px;
}

.toolButton, .btnAddSub, #btn-record-timelapse,
#btn-new-creation, #btn-config, #primitivesContainer .btn {
    background-color: var(--btn-bg);
    color: var(--btn-text);
    border: var(--btn-border);
    border-radius: 4px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.toolButton, .btnAddSub {
    width: 32px;
}

#input-hex-color{
    color: #b1b1b1 !important;
}

#btn-record-timelapse {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
    height:34px;
}

#btn-record-timelapse.btn-danger {
    background-color: #dc3545 !important;
    color: white !important;
    border-color: #dc3545 !important;
}

#btn-image-capture, #camera-lock-button{
  background-color: var(--btn-bg);
    color: white !important;
}

#btn-record-layout-toggle{
  background-color: var(--btn-bg);
    color: white !important;  
}

#btn-record-layout-icon{
    margin-top: 0px !important;
    margin-left: 0px !important;
}

#btn-image-capture{
    margin-left: 15px;
    margin-right: 15px;
}


#camera-lock-icon{
    margin-top: 0px !important;
    margin-left: 0px !important;
}

#btn-image-capture-icon{
    margin-top: 0px !important;
}

#tools{
    height: 31px;
}

#sliderContainer{
    margin-bottom: -10px;
}

/* Onboarding Styles */
#onboarding-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    z-index: 2000;
    pointer-events: none;

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}

.onboarding-arrow {
    width: 100px;
    animation: hueRotate 2s infinite linear;

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}

@keyframes hueRotate {
    from { filter: hue-rotate(0deg); }
    to { filter: hue-rotate(360deg); }
}

.onboarding-text {
    width: 200px;
    height: 100px;
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    g-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-left: 0px;
    border-radius: 4px;
    pointer-events: auto;
    padding: 10px;

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}

#btn-color{
    width: 32px;
    height: 32px;
    border: 4px solid white;
}

#btn-config-bgcolor{
    border: 4px solid white;
}

#loop-panel, #config-panel {
    background-color: var(--btn-bg) !important;
    border: var(--btn-border) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    color: #000000;
}

.form-control, .form-select{
    color: grey;
    background-color: var(--btn-bg) !important;
    border: 0px;
}

.form-control:focus, .form-select:focus{
    color: grey;
}

.text-secondary{
    color: white !important;
}

.btn-random-seed{

}

/* Left Panel Interactivity */
#left-panel {
    pointer-events: none !important;
}

#left-panel button,
#left-panel input,
#left-panel .btn {
    pointer-events: auto !important;
}

#left-panel label {
    pointer-events: none;
    user-select: none;
}

#btn-open-safety:hover {
    color: #dc3545 !important;
    border-color: #dc3545 !important;
}

.form-control:focus, .form-select:focus{
    color: #ffffff !important;
}


.onboardNoSelect {
    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}