body.arvis-landing-demo {
    min-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
}

body.arvis-landing-demo .guest-visible,
body.arvis-landing-demo .hero,
body.arvis-landing-demo .maker-section,
body.arvis-landing-demo .use-cases-section,
body.arvis-landing-demo .pricing-section,
body.arvis-landing-demo #build-claw-nav-link,
body.arvis-landing-demo #auth-btn {
    display: none !important;
}

body.arvis-landing-demo #clawground {
    display: block !important;
}

/* Nearly full-viewport embed — keep a thin inset, no 1180px card cap */
body.arvis-landing-demo.spaces-guest-view #clawground.playground-section,
body.arvis-landing-demo #clawground.playground-section {
    padding:
        calc(4.15rem + env(safe-area-inset-top, 0px))
        max(0.5rem, env(safe-area-inset-right, 0px))
        calc(5.35rem + env(safe-area-inset-bottom, 0px))
        max(0.5rem, env(safe-area-inset-left, 0px));
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

body.arvis-landing-demo.spaces-guest-view #clawground .container,
body.arvis-landing-demo #clawground .container {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    height: calc(100dvh - 4.15rem - 5.35rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    min-height: 420px;
}

body.arvis-landing-demo.spaces-guest-view #clawground .playground-container,
body.arvis-landing-demo #clawground .playground-container {
    display: flex !important;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    box-shadow: 0 16px 56px rgba(0, 0, 0, 0.42);
    backdrop-filter: blur(12px);
    overflow: hidden;
}

/* Flex fixes grid bug: display:none on sidebar left main content in a ~280px column */
body.arvis-landing-demo #clawground .agent-sidebar,
body.arvis-landing-demo #clawground .sidebar-resizer {
    display: none !important;
}

body.arvis-landing-demo #clawground .playground-main {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
    height: 100%;
}

body.arvis-landing-demo #clawground #playground-header,
body.arvis-landing-demo #clawground-chat-messages,
body.arvis-landing-demo #office-main-view,
body.arvis-landing-demo #clawground #clawground-input-area,
body.arvis-landing-demo #clawground-input-area,
body.arvis-landing-demo #clawground .chat-input-area {
    display: none !important;
}

body.arvis-landing-demo .spaces-board-controls,
body.arvis-landing-demo .spaces-space-rail,
body.arvis-landing-demo .spaces-timeline-dock,
body.arvis-landing-demo #spaces-timeline-dock,
body.arvis-landing-demo #spaces-timeline-btn,
body.arvis-landing-demo .spaces-timeline-toolbar,
body.arvis-landing-demo #spaces-fullscreen-btn {
    display: none !important;
}

body.arvis-landing-demo.spaces-mode-active #clawground .spaces-panel,
body.arvis-landing-demo.spaces-mode-active #clawground #spaces-panel {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
    padding: 0;
}

body.arvis-landing-demo .spaces-shell {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 0;
    min-width: 0;
}

body.arvis-landing-demo .spaces-wrap {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
    width: 100%;
    height: 100%;
}

body.arvis-landing-demo #spaces-viewport {
    flex: 1 1 auto;
    min-height: 240px;
    height: 100%;
    cursor: pointer;
    border-radius: 0 0 14px 14px;
    border-left: none;
    border-right: none;
    border-bottom: none;
}

body.arvis-landing-demo #spaces-share-btn,
body.arvis-landing-demo #spaces-create-btn {
    display: none !important;
}

body.arvis-landing-demo footer {
    display: none !important;
}

body.arvis-landing-demo .navbar .nav-links .pro-visible {
    display: none !important;
}

body.arvis-landing-demo .spaces-claw-token {
    cursor: pointer;
    transition: opacity 0.45s ease, filter 0.45s ease;
}

body.arvis-landing-demo .spaces-claw-token.demo-listening {
    opacity: 0.82;
    filter: saturate(0.88);
}

body.arvis-landing-demo .spaces-claw-token.demo-speaking {
    opacity: 1;
    filter: none;
    z-index: 12;
}

body.arvis-landing-demo .spaces-claw-token.demo-speaking .spaces-claw-token-avatar {
    box-shadow:
        0 0 0 2px rgba(255, 252, 0, 0.9),
        0 0 28px rgba(255, 252, 0, 0.32);
    transform: scale(1.05);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

body.arvis-landing-demo .spaces-claw-token .spaces-claw-token-avatar {
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

body.arvis-landing-demo .spaces-claw-token.demo-listening .spaces-claw-token-name {
    opacity: 0.7;
}

body.arvis-landing-demo .spaces-claw-token-bubble,
body.arvis-landing-demo .spaces-claw-token-bubble.is-landing-demo {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    width: fit-content;
    max-width: min(260px, 38vw);
    min-width: 120px;
    max-height: 5.75rem;
    padding: 0.58rem 0.78rem;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.38;
    text-align: center;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
    overflow: hidden;
    hyphens: none;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    bottom: calc(100% + (14px * var(--spaces-bubble-counter-scale, 1)));
    left: 50%;
    transform: translateX(-50%) scale(var(--spaces-bubble-counter-scale, 1));
    transform-origin: 50% calc(100% + 6px);
    z-index: 8;
    transition: opacity 0.35s ease, transform 0.35s ease;
}

body.arvis-landing-demo .spaces-claw-token-bubble.talking,
body.arvis-landing-demo .spaces-claw-token-bubble.is-landing-demo.talking {
    max-width: min(280px, 40vw);
    max-height: 5.75rem;
    animation: spacesBubbleTalkingPulse 1s ease-in-out infinite;
}

body.arvis-landing-demo .spaces-claw-token.demo-speaking .spaces-claw-token-bubble {
    transform: translateX(-50%) translateY(-2px) scale(var(--spaces-bubble-counter-scale, 1));
}

body.arvis-landing-demo #spaces-viewport.spaces-immersive-env {
    transition: background-color 1.1s ease, background-image 1.1s ease;
}

body.arvis-landing-demo .arvis-demo-blackboard {
    position: absolute;
    z-index: 4;
    border-radius: 14px;
    border: 2px solid rgba(255, 255, 255, 0.14);
    background: var(--spaces-viewport-bg-landing-demo);
    box-shadow:
        inset 0 0 0 1px rgba(255, 252, 0, 0.08),
        0 16px 40px rgba(0, 0, 0, 0.42);
    pointer-events: none;
    overflow: hidden;
}

body.arvis-landing-demo .arvis-demo-blackboard-svg {
    display: block;
    width: 100%;
    height: 100%;
}

body.arvis-landing-demo .arvis-demo-blackboard-svg text,
body.arvis-landing-demo .arvis-demo-blackboard-svg .arvis-demo-sketch-label {
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.65));
    user-select: none;
}
body.arvis-landing-demo .arvis-demo-blackboard-svg path,
body.arvis-landing-demo .arvis-demo-blackboard-svg line,
body.arvis-landing-demo .arvis-demo-blackboard-svg polyline,
body.arvis-landing-demo .arvis-demo-blackboard-svg circle,
body.arvis-landing-demo .arvis-demo-blackboard-svg rect {
    filter: drop-shadow(0 0 3px rgba(255, 252, 0, 0.22));
}

body.arvis-landing-demo .arvis-demo-blackboard::after {
    content: 'Live sketch';
    position: absolute;
    left: 12px;
    top: 8px;
    font-size: 0.54rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 248, 194, 0.38);
    pointer-events: none;
}

body.arvis-landing-demo #spaces-draw-layer .arvis-demo-stroke {
    pointer-events: none;
    filter: drop-shadow(0 0 4px rgba(255, 252, 0, 0.18));
}

body.arvis-landing-demo #spaces-draw-layer .arvis-demo-stroke {
    bottom: calc(20px + env(safe-area-inset-bottom, 0px));
}

@media (max-width: 768px) {
    body.arvis-landing-demo.spaces-guest-view #clawground.playground-section,
    body.arvis-landing-demo #clawground.playground-section {
        padding:
            calc(4rem + env(safe-area-inset-top, 0px))
            max(0.35rem, env(safe-area-inset-right, 0px))
            calc(5rem + env(safe-area-inset-bottom, 0px))
            max(0.35rem, env(safe-area-inset-left, 0px));
    }

    body.arvis-landing-demo.spaces-guest-view #clawground .container,
    body.arvis-landing-demo #clawground .container {
        height: calc(100dvh - 4rem - 5rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
        min-height: 360px;
    }

    body.arvis-landing-demo.spaces-guest-view #clawground .playground-container,
    body.arvis-landing-demo #clawground .playground-container {
        border-radius: 12px;
    }

    body.arvis-landing-demo #spaces-viewport {
        border-radius: 0 0 12px 12px;
    }
}
