html,body {
    overflow: hidden;
}

body {
    margin: 0;
    font-family: 'Calibri', sans-serif;
    text-align: center;
    width: 100vw;
    height: 100vh;
    padding: 0;
    overflow: hidden !important;
}

body.buzz-state {
    background-color: var(--buzz-page-background);
}

body.sunk-state {
    background-color: var(--sunk-page-background);
}

body.docked-state {
    background-color: var(--docked-page-background);
}

body.trash-state {
    background-color: var(--trash-page-background);
}

#bubble-container {
  min-height: calc(50px + 100px + 200px); 
  display: none;
  /* padding-top: var(--toolbar-height);
  padding-bottom: calc(var(--toolbar-height) * 2);
  box-sizing: border-box; */
}

.bubbles-view #bubble-container{
    display: block;
}

#addBubbleButton {
    width: clamp(25px,5vmin + 5px,60px);  
    aspect-ratio:  1 / 1;
    height: auto; 
    border-radius: 50%;
    border: none;
    background-color: rgb(34, 72, 123);
    color: white;
    font-size: clamp(12.5px,2.5vmin + 2.5px ,30px);
    cursor: pointer;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.4);
    position: absolute;
    z-index: 2000;
    user-select: none;
}


.context-menu {
    position: absolute;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    padding: 6px 0;
    z-index: 1001;
    min-width: 200px;
    font-size: 14px;
    transition: opacity 0.3s ease-in-out, transform 0.2s ease-out;
}

.context-menu ul {
    user-select: none;
    list-style: none;
    padding: 0;
    margin: 0;
}

.context-menu li {
    user-select: none;
    padding: 10px 16px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
}

.context-menu li:last-child {
    border-bottom: none;
}

.context-menu li:hover {
    background: #f5f5f5;
    color: #007AFF;
}

.context-menu li:active {
    background: #eaeaea;
}

.ul-context-menu .submenu {
    position: absolute;
    top: 0;
    left: 100%;
    background: #ffffff;
    border-radius: 8px;
    display: none;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    padding: 6px 0;
    z-index: 1001;
    min-width: 200px;
    font-size: 14px;
    transition: opacity 0.3s ease-in-out, transform 0.2s ease-out;
}

.ul-context-menu .submenu ul {
    user-select: none;
    list-style: none;
    padding: 0;
    margin: 0;
}

.ul-context-menu .submenu li {
    user-select: none;
    padding: 10px 16px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
}

.ul-context-menu .has-submenu {
    position: relative;
    cursor: pointer;
}

.menu-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
    opacity: 0.8;
}

.shortcut {
    font-size: 12px;
    color: #888;
}

/* Tooltip */
.tooltip {
    position: absolute;
    background-color: #333;
    color: #fff;
    font-size: 14px;
    padding: 6px 10px;
    border-radius: 6px;
    z-index: 1000;
    white-space: pre-wrap;
    text-align:left;   
    max-width: 250px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    pointer-events: none;
    transition: opacity 0.3s ease;
}

/* Scrollable Elements */
.scrollable::-webkit-scrollbar {
  width: 8px;   
  transition: width 0.2s;
}
.scrollable::-webkit-scrollbar-track {
  background: transparent;
}
.scrollable::-webkit-scrollbar-thumb {
  background: #b7b7b7;
  border-radius: 10px;
}
.scrollable::-webkit-scrollbar-thumb:hover {
  background: #999999;
}