/* ==========================================================================
   RESET & BASE & UTILITIES
   ========================================================================== */
* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', sans-serif; -webkit-tap-highlight-color: transparent; }

body {
    background-color: #1a1a1a;
    height: 100vh; height: 100dvh; width: 100vw;
    overflow: hidden; position: relative;
    overscroll-behavior: none;
}

button { border: none; outline: none; -webkit-tap-highlight-color: transparent; }

/* Impede seleção de imagem e texto em botões e ícones (mobile) */
button, .icon-btn, .material-icons-round, .card-img, .dock-tab, .layer-btn, #tool-terrain-brush {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}

/* Impede arrastar imagens de ícones */
.card-img, .icon-btn img, .material-icons-round, #tool-terrain-brush img {
    pointer-events: none;
    touch-action: manipulation;
}

/* Base Icon Button */
.icon-btn {
    background: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1);
    color: white; width: 40px; height: 40px; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    backdrop-filter: blur(4px); cursor: pointer; transition: transform 0.1s;
}
.icon-btn:active { transform: scale(0.9); }

/* Common Helper Classes might go here later */
