html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

/* Three-column shell: desktop ad rails (see app/index.html) flank the canvas
   column. Rails stay hidden below 1440px so the dashboard keeps a comfortable
   width; they only toggle on window resize, which is the event the compose
   runtime already listens to for canvas sizing. */
body {
    display: flex;
}

.ad-rail {
    display: none;
    width: 300px;
    flex: none;
    height: 100%;
    overflow: hidden;
}

.app-center {
    flex: 1;
    min-width: 0;
    height: 100%;
    position: relative;
}

/* Boot overlay. #app-center is cleared by ComposeViewport on mount, so this
   only lives until the first frame. */
.app-boot {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

@media (min-width: 1440px) {
    .ad-rail {
        display: block;
    }
}
